Разница во времени, возвращающая целое число ansi sql 92

Я пытаюсь рассчитать количество минут между двумя датами с использованием sql ansi-92, Я не могу использовать timestampdiff() функция, потому что я получаю ответ об ошибке.

Я старался date1-date2, но я всегда получаю результат 0 (хотя без ошибок).

Пример:

select '2016-11-02 15:25:00' - '2016-11-02 15:05:00'

1 ответ

Это, безусловно, должно работать для вас:

select TIMESTAMPDIFF(MINUTE,a.my_date2,a.my_date) diff,
       TIMESTAMPDIFF(MINUTE,'2016-11-02 15:05:00','2016-11-02 15:25:00') diff2
from my_tab a

Я получил вывод (разница в минутах):

| diff | diff2 |
|------|-------|
|   20 |    20 |

Я использовал этот код для создания таблицы, если вам это нужно:

create table my_tab
(
  my_date datetime,
  my_date2 datetime
  )
 ;
 insert into my_tab (my_date, my_date2)
 values ('2016-11-02 15:25:00', '2016-11-02 15:05:00')
 ;
Другие вопросы по тегам