在MariaDB中使用SUM SEC_TO_TIME

时间:2019-03-18 02:33:15

标签: sql mariadb

来自How to sum time using mysql的参考

我想每月var linktext1= jQuery(".selected").next().text(); alert (linktext1); 字段SUM进行查询:

LogsFormatted.Late

但是结果是

  

1111-无效使用组功能

查询在哪里出现问题?导致错误输出。.提前谢谢

[已编辑] 只需应用即可解决

在查询开始时更改格式SELECT SUM(CASE WHEN MONTH (LogsFormatted.DateIn) = 1 THEN SEC_TO_TIME( SUM( TIME_TO_SEC(LogsFormatted.Late))) ELSE 0 END ) AS '1' FROM HrAttLogsFormatted AS LogsFormatted

SUM

1 个答案:

答案 0 :(得分:1)

您不需要多次调用sum()。您还可以将case条件移动到WHERE子句:

SELECT SUM(TIME_TO_SEC(lf.Late)) 
FROM HrAttLogsFormatted lf
WHERE MONTH(lf.DateIn) = 1 ;

如果要进行条件聚合,请执行以下操作:

SELECT SUM(CASE WHEN MONTH(lf.DateIn) = 1 THEN TIME_TO_SEC(lf.Late) END)
FROM HrAttLogsFormatted lf;