我有列Mon,Tue,wed,thu,fri,sat,sun,每天都有时间戳到时间表中的项目
我需要通过添加项目的所有列来获得所花费的总时间。
我的实际查询是这样的 -
我的实际查询是这样的 - SELECT time(SEC_TO_TIME(SUM(TIME_TO_SEC(fri))) + SEC_TO_TIME(SUM(TIME_TO_SEC(thu))) + SEC_TO_TIME(SUM(TIME_TO_SEC(tue)))) FROM timesheets WHERE project_id = 5
任何人都可以帮我编写精确查询以获取所有列的时间和总和作为总计
提前致谢
答案 0 :(得分:2)
你试过吗?
SELECT ADDTIME(time1, time2);
答案 1 :(得分:1)
我认为没有时间函数需要两个以上的参数来总结它们 以下代码段可能对您有所帮助:
select
addtime( mon, addtime( tue, addtime( wed, addtime( thu,
addtime( fri, addtime( sat, sun ) ) ) ) ) ) total_time_spent
以上查询返回以hours:minutes:seconds
格式花费的总时间
要仅选择总共花费的小时数,请使用time_format
功能。
select time_format( total_time_spent, '%H' ) total_hours_spent
请注意,此查询仅返回花费的总时间的一小部分。如果存在,您将丢失分钟和秒。
<强>更新强>:
以下代码段可以为您提供总时数和分钟数。
select
time_format(
addtime( mon, addtime( tue, addtime( wed, addtime( thu,
addtime( fri, addtime( sat, sun ) ) ) ) ) ),
'%H:%i' ) total_hours_and_mins_spent
答案 2 :(得分:0)