mysql - SQL..对两行求和

标签 mysql sum

示例数据:

LOCATION   NAME   LABEL1   LABEL2 SERVICE TIME
NY         Andrew    A       B      HOUSE  2555
NY         Andrew    A       B      CAR    35
NJ         Copley    C       A      HOUSE  1025
NY         Copley    A       B      HOUSE  650
VA         Dalton    D       C      PET    25

我想要做的是添加另一列,其中显示除服务之外具有相同数据的行的总和(时间)。此外,我需要的服务只是汽车和房屋的总和。这可能吗?如果没有,你能帮我正确的查询

我需要的示例输出:

LOCATION   NAME   LABEL1   LABEL2 SERVICE TIME     SUM
NY         Andrew    A       B      HOUSE  2555    **2590**
NY         Andrew    A       B      CAR    35
NJ         Copley    C       A      HOUSE  1025    1025
NY         Copley    A       B      HOUSE  650     650

最佳答案

SELECT `LOCATION`, `NAME`, `LABEL1`, `LABEL2`, SUM(`TIME`)
  FROM `myTable`
 WHERE `SERVICE` = "CAR" OR `SERVICE` = "HOUSE"
 GROUP BY `LOCATION`, `NAME`, `LABEL1`, `LABEL2`

这不会添加另一列,但当作为查询运行时,它会返回您在结果集中请求的数据。我建议采用这种方法。

您还应该确保您的 indexes针对此类查询进行了最佳设置。

关于mysql - SQL..对两行求和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6536761/

相关文章:

php - 使用 Yii、Mysql 下载 longblob 文件(adobe Illustrator 或 png)

mysql - SQL - 如果表条目存在则

Python 内置求和函数 vs. for 循环性能

Python:对 Pandas 数据框中与列值匹配的行进行求和?

php - 无法创建表 errno : 150 on Mysql

mysql - laravel where子句中的子查询

php - 在 PHP/MYSQL 中的 XML WebService 中传递参数

haskell - 求和列表时是否有防止溢出的通用方法?

带有 case 语句的 Mysql SUM

python - 来自多维数组的 Numpy Sum?