我们有一个应用程序,可以将时间存储为HHMM,并在几分钟内中断 - 我需要能够找到使用MySQL的两个条目之间的小时差异。例如:
Start End Breaks
0445 0825 030
这应该返回3.167小时
我尝试使用:
SELECT (TIMESTAMPDIFF(HOUR,start,end)-breaks) AS Duration
FROM table
这将正常工作,但由于它们不是有效时间,因此对所有内容都返回NULL。
然后我考虑首先将整数转换为日期戳,但无法弄清楚如何执行此操作,因为当前没有分隔符可以尝试像爆炸一样。
如何找到这两者之间的差异,然后减去中断值?
答案 0 :(得分:0)
不操纵时间时不要使用时间功能(即使它看起来像时间)。
一个简单的数学就可以了。将值转换为十进制表示(以分钟为单位)(如果使用了十进制类型:T % 60 + 60 * FLOOR(T / 100)
),然后根据需要简单地减去值((a - b) / 60.
)。