MySQL - 几秒钟到最近的半分钟

时间:2017-10-10 04:25:57

标签: php mysql database

我试图将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

1 个答案:

答案 0 :(得分:2)

解释你想要什么的一种方法是每隔30秒就会发生一次上限事件,而且每个间隔都有一半的时间。这导致以下查询:

SELECT
    seconds_field,
    CEILING(seconds_field / 30) / 2 AS formatted_second_fields
FROM yourTable;

Demo