我试图将mysql表字段舍入到下一个最接近的半分钟。字段只包含22,44,121之类的秒,但看起来我的逻辑错了。有人能帮我吗。例如:
22 seconds would be .5 minutes
35 seconds would be 1 minutes
68 seconds would be 1.5 minutes
121 seconds would be 2.5 minutes
这是我的解决方案
select seconds_field,CEILING(seconds_field /60 * 30) as formatted_second_fields from table
seconds_fields的样本值
22
44
121
1243
364
答案 0 :(得分:2)
解释你想要什么的一种方法是每隔30秒就会发生一次上限事件,而且每个间隔都有一半的时间。这导致以下查询:
SELECT
seconds_field,
CEILING(seconds_field / 30) / 2 AS formatted_second_fields
FROM yourTable;