2015-05-28 3 views
1

У меня есть 2 колонки в моей базе данных MySQL - hours и minutesсплит часов и минут в количестве 15 минут

я хочу, чтобы иметь возможность разделить значения в 15-минутных сегментов с использованием PHP.

, например, если я имел строку, которая была:

hours = 1 
minutes = 30 

было бы 6 x 15 minutes

если строка была

hours = 2 
minutes = 0 

было бы 8 x 15 minutes

+1

Возможно, просто храните время как единое целое. Но в любом случае, это немного легко ;-) – Strawberry

ответ

2

В этом должен возвращать ряд 15-минутных сегментов

SELECT ROUND((hours*60+minutes)/15) AS segments FROM `table` 

Вы также можете использовать CEIL или FLOOR вместо ROUND, чтобы достичь необходимого округление для нецелых сегментов.

0
SELECT ROUND(TIME_TO_SEC('1:30:00')/900,0) x; 
+------+ 
| x | 
+------+ 
| 6 | 
+------+ 

SELECT ROUND(TIME_TO_SEC('2:00:00')/900,0) x; 
+------+ 
| x | 
+------+ 
| 8 | 
+------+