2012-01-15 8 views

ответ

7

Используйте это:

SELECT UNIX_TIMESTAMP() - UNIX_TIMESTAMP(datetime_col) 
+1

Это возвращает секунды между отметками времени. Вам все равно нужно разделить его на 60 и округлить результат соответствующим образом. –

1

Просто найдите функцию TIMEDIFF в документах MySQL.

0

Одним из способов является использование эпохи UNIX (как на rkosegi и Holger Just)

SELECT ROUND((UNIX_TIMESTAMP() - UNIX_TIMESTAMP(datefield))/60); 
20

Используйте TIMESTAMPDIFF() встроенной функции:

SELECT TIMESTAMPDIFF(MINUTE, my_datatime_col, now()) 

Возможно, вам придется поменять значения даты и времени, чтобы получить правильный знак (положительный/отрицательный) на результат, если столбец до/после «сейчас».

+0

Это очень приятно. Спасибо. – Jirapong

Смежные вопросы