我想显示17.5
而不是17:30:00
.怎么做到这一点?我搜索过但没有找到.
我想在我的查询中这样做:
SELECT o.*, u.* ,p.* , SEC_TO_TIME(SUM(TIME_TO_SEC(DATE_FORMAT(STR_TO_DATE(dateto, '%m/%d/%y %H:%i:%s'), '%Y-%m-%d %H:%i:%s')) - TIME_TO_SEC(DATE_FORMAT(STR_TO_DATE(datefrom, '%m/%d/%y %H:%i:%s'), '%Y-%m-%d %H:%i:%s')))) AS totalHrs, number_format((select SEC_TO_TIME(SUM(TIME_TO_SEC(DATE_FORMAT(STR_TO_DATE(dateto, '%m/%d/%y %H:%i:%s'), '%Y-%m-%d %H:%i:%s')) - TIME_TO_SEC(DATE_FORMAT(STR_TO_DATE(datefrom, '%m/%d/%y %H:%i:%s'), '%Y-%m-%d %H:%i:%s')))) FROM overtime WHERE approve_by=0)) AS grandTotal FROM overtime AS o, users AS u, position AS p WHERE o.user_id=u.user_id and u.p_id=p.p_id and o.approve_by=0 GROUP BY p.p_id ORDER BY p.position_name ASC
Gordon Linof.. 7
如果你有时间价值,那么这样的话:
select time_to_sec(timeval) / (60 * 60)
如果你想要1个小数,那么转换为小数:
select cast(time_to_sec(timeval) / (60 * 60) as decimal(10, 1))
这并不是很明显这是如何适合您的查询,这似乎是一个非顺从.
如果你有时间价值,那么这样的话:
select time_to_sec(timeval) / (60 * 60)
如果你想要1个小数,那么转换为小数:
select cast(time_to_sec(timeval) / (60 * 60) as decimal(10, 1))
这并不是很明显这是如何适合您的查询,这似乎是一个非顺从.