Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql SQL..求两行的和_Mysql_Sum - Fatal编程技术网

Mysql SQL..求两行的和

Mysql SQL..求两行的和,mysql,sum,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

样本数据:

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
这不会添加另一列,但会在作为查询运行时返回您在resultset中请求的数据。我建议采取这种方法

您还应该确保为此类查询以最佳方式设置您的查询

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


您还应确保为此类查询以最佳方式设置了表。

您的表未标准化。对它们进行规范化将使这变得非常容易,消除数据重复,并且是一件非常正确的事情。您的表没有进行规范化。将它们正常化将使这变得非常简单,消除数据重复,这是一件正确的事情。请注意,如果您想轻松运行其他查询,包括
总和
。使用WHERE
服务
=“CAR”或
服务
=“HOUSE”,您可以使用此
选择
创建一个视图与“服务”在(‘车’、‘房子’)中的位置相同?@Cha:是的,那实际上会更好。我如何计算车和房子的时间?它们仍然不相加,它返回两行不同的数据,尽管所有细节都是相同的,除了服务。有什么想法吗?@Cha:这就是我回答中的查询所做的。请注意,如果您想轻松运行其他查询,包括
SUM
,您可以使用此
选择
创建一个视图。使用WHERE
SERVICE
=“CAR”或
SERVICE
=“HOUSE”与WHERE'SERVICE'在('CAR','HOUSE')中相同?@Cha:Yes,事实上,那会更好。我如何计算汽车和房子的时间?它们仍然不相加,它返回两行不同的数据,尽管所有细节都是相同的,除了服务。有什么想法吗?@Cha:这就是我答案中的疑问。
SELECT `LOCATION`, `NAME`, `LABEL1`, `LABEL2`, SUM(`TIME`)
  FROM `myTable`
 WHERE `SERVICE` = "CAR" OR `SERVICE` = "HOUSE"
 GROUP BY `LOCATION`, `NAME`, `LABEL1`, `LABEL2`