Mysql Sumarize TIMEDIFF字段

Mysql Sumarize TIMEDIFF字段,mysql,Mysql,如何使用此查询汇总总时间: SELECT `tblproduction`.`ID`, `tblproduction`.`OrderID`, `tblproduction`.`ProductID`, `tblproduction`.`Start`, `tblproduction`.`End`, (TIME_TO_SEC(TIMEDIFF(`tblproduction`.`EndDateTime`,`tblproduction`.`StartDateTime`))) AS TotTim

如何使用此查询汇总总时间:

    SELECT 
`tblproduction`.`ID`, 
`tblproduction`.`OrderID`, 
`tblproduction`.`ProductID`,
`tblproduction`.`Start`,
`tblproduction`.`End`,
(TIME_TO_SEC(TIMEDIFF(`tblproduction`.`EndDateTime`,`tblproduction`.`StartDateTime`))) AS TotTime
FROM `tblproduction` 
LEFT OUTER JOIN `tblproductionlog` ON `tblproduction`.`ID` = `tblproductionlog`.`ID` 
WHERE tblproduction.OrderID = 'a'
GROUP BY `tblproduction`.`ID` 
结果表为:

+--------+---------+---------+---------+---------+
| Id     | OrderID | Start   | End     | TotTime |
+--------+---------+---------+---------+---------+
| 1      |   a     |17:17:50 |17:28:21 |631      |  
+--------+---------+---------+---------+---------+  
| 2      |   a     |17:34:55 |19:49:00 |8045     |
+--------+---------+---------+---------+---------+ 
我想要的是:

+---------+---------+
| OrderID | TotTime | 
+---------+---------+
|   a     | 8676    |  
+---------+---------+
我应该在查询中更改什么?

您只需写下:-

SELECT 
`tblproduction`.`OrderID`, 
SUM(TIME_TO_SEC(TIMEDIFF(`tblproduction`.`EndDateTime`,`tblproduction`.`StartDateTime`))) AS TotTime
FROM `tblproduction` 
LEFT OUTER JOIN `tblproductionlog` ON `tblproduction`.`ID` = `tblproductionlog`.`ID` 
WHERE tblproduction.OrderID = 'a'
GROUP BY `tblproduction`.`OrderID`;
这可以帮助您。

您只需写下:-

SELECT 
`tblproduction`.`OrderID`, 
SUM(TIME_TO_SEC(TIMEDIFF(`tblproduction`.`EndDateTime`,`tblproduction`.`StartDateTime`))) AS TotTime
FROM `tblproduction` 
LEFT OUTER JOIN `tblproductionlog` ON `tblproduction`.`ID` = `tblproductionlog`.`ID` 
WHERE tblproduction.OrderID = 'a'
GROUP BY `tblproduction`.`OrderID`;
这可以帮助您。

您只需写下:-

SELECT 
`tblproduction`.`OrderID`, 
SUM(TIME_TO_SEC(TIMEDIFF(`tblproduction`.`EndDateTime`,`tblproduction`.`StartDateTime`))) AS TotTime
FROM `tblproduction` 
LEFT OUTER JOIN `tblproductionlog` ON `tblproduction`.`ID` = `tblproductionlog`.`ID` 
WHERE tblproduction.OrderID = 'a'
GROUP BY `tblproduction`.`OrderID`;
这可以帮助您。

您只需写下:-

SELECT 
`tblproduction`.`OrderID`, 
SUM(TIME_TO_SEC(TIMEDIFF(`tblproduction`.`EndDateTime`,`tblproduction`.`StartDateTime`))) AS TotTime
FROM `tblproduction` 
LEFT OUTER JOIN `tblproductionlog` ON `tblproduction`.`ID` = `tblproductionlog`.`ID` 
WHERE tblproduction.OrderID = 'a'
GROUP BY `tblproduction`.`OrderID`;

这可以帮助您。

删除您不需要的列,并按医嘱ID而不是ID汇总总时间,第三组

SELECT 
    `tblproduction`.`OrderID`, 
    SUM(TIME_TO_SEC(TIMEDIFF(`tblproduction`.`EndDateTime`,`tblproduction`.`StartDateTime`))) AS TotTime
FROM `tblproduction` 
LEFT OUTER JOIN `tblproductionlog` ON `tblproduction`.`ID` = `tblproductionlog`.`ID` 
WHERE tblproduction.OrderID = 'a'
GROUP BY `tblproduction`.`OrderID` 

删除您不需要的列,并按OrderID而不是ID汇总总时间,第三组

SELECT 
    `tblproduction`.`OrderID`, 
    SUM(TIME_TO_SEC(TIMEDIFF(`tblproduction`.`EndDateTime`,`tblproduction`.`StartDateTime`))) AS TotTime
FROM `tblproduction` 
LEFT OUTER JOIN `tblproductionlog` ON `tblproduction`.`ID` = `tblproductionlog`.`ID` 
WHERE tblproduction.OrderID = 'a'
GROUP BY `tblproduction`.`OrderID` 

删除您不需要的列,并按OrderID而不是ID汇总总时间,第三组

SELECT 
    `tblproduction`.`OrderID`, 
    SUM(TIME_TO_SEC(TIMEDIFF(`tblproduction`.`EndDateTime`,`tblproduction`.`StartDateTime`))) AS TotTime
FROM `tblproduction` 
LEFT OUTER JOIN `tblproductionlog` ON `tblproduction`.`ID` = `tblproductionlog`.`ID` 
WHERE tblproduction.OrderID = 'a'
GROUP BY `tblproduction`.`OrderID` 

删除您不需要的列,并按OrderID而不是ID汇总总时间,第三组

SELECT 
    `tblproduction`.`OrderID`, 
    SUM(TIME_TO_SEC(TIMEDIFF(`tblproduction`.`EndDateTime`,`tblproduction`.`StartDateTime`))) AS TotTime
FROM `tblproduction` 
LEFT OUTER JOIN `tblproductionlog` ON `tblproduction`.`ID` = `tblproductionlog`.`ID` 
WHERE tblproduction.OrderID = 'a'
GROUP BY `tblproduction`.`OrderID` 

比我快几秒钟-我的+1:DI已经尝试了相同的查询,但当我手动汇总TotTime字段的值时,我得到了错误的值。我只需要从查询中删除左侧的外部联接行。谢谢大家。比我快几秒钟-我的+1:DI已经尝试了相同的查询,但是当我手动汇总TotTime字段的值时,我得到了错误的值。从查询中,我只需要删除左侧的外部联接行。谢谢大家。比我快几秒钟-我的+1:DI已经尝试了相同的查询,但是当我手动汇总TotTime字段的值时,我得到了错误的值。从查询中,我只需要删除左侧的外部联接行。谢谢大家。比我快几秒钟-我的+1:DI已经尝试了相同的查询,但是当我手动汇总TotTime字段的值时,我得到了错误的值。从查询中,我只需要删除左侧的外部联接行。谢谢大家。