示例数据:
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
我想要做的是添加另一列,其中显示除了Service之外具有相同数据的行的总和(时间)。此外,我需要的服务只是汽车和房屋的总和。这可能吗?如果没有,你可以帮助我正确的查询
我需要的示例输出:
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
答案 0 :(得分:3)
SELECT `LOCATION`, `NAME`, `LABEL1`, `LABEL2`, SUM(`TIME`)
FROM `myTable`
WHERE `SERVICE` = "CAR" OR `SERVICE` = "HOUSE"
GROUP BY `LOCATION`, `NAME`, `LABEL1`, `LABEL2`
这不会添加另一列,但它会在作为查询运行时返回您在结果集中请求的数据。我建议采用这种方法。
您还应确保为此类查询设置最佳indexes。