我有一个输入表单,用户可以在其中输入开始时间和开始时间。然后我有一个计算时差的函数,并存储在新字段中工作的小时和分钟。
我想要做的是将总时间计算为小时和分钟中的一个值。
以下SQL将带来存储在数据库中的所有meta_value
SELECT wp_frm_item_metas.meta_value
FROM wp_frm_item_metas
WHERE 1=1
AND wp_frm_item_metas.field_id = '103'
返回如下值(仅限前5个)
meta_value
2:15
1:15
2:15
4:15
0.00
如果我使用以下
SELECT SUM(wp_frm_item_metas.meta_value) AS total_hours
FROM wp_frm_item_metas
WHERE 1=1
AND wp_frm_item_metas.field_id = '103'
我没有得到小时和分钟的总数,所以我想知道是否有人可以帮我实现这个目标?
由于
韦恩
答案 0 :(得分:1)
使用TIME_TO_SEC转换为秒,然后使用SUM。对于输出,您可以使用SEC_TO_TIME函数来获取小时:分钟。 E.g:
SELECT SEC_TO_TIME(SUM(TIME_TO_SEC(wp_frm_item_metas.meta_value))) AS total_hours
FROM wp_frm_item_metas
WHERE 1=1
AND wp_frm_item_metas.field_id = '103'
我没有对上述情况进行过测试,但应该让你接近...