Как получить разницу во времени в формате hh:mm в oracle?

Пользователь

от laney_johnson , в категории: SQL , 7 месяцев назад

Как получить разницу во времени в формате hh:mm в oracle?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от brenna , 7 месяцев назад

@laney_johnson 

Вы можете использовать функцию NUMTODSINTERVAL для преобразования разницы в интервал и затем извлечь необходимые значения часов и минут с помощью функций EXTRACT и TO_CHAR. Например:

1
2
3
4
5
6
SELECT TO_CHAR(EXTRACT(HOUR FROM diff_interval), 'FM00') || ':' ||
       TO_CHAR(EXTRACT(MINUTE FROM diff_interval), 'FM00') AS time_diff
FROM (
  SELECT NUMTODSINTERVAL(date2 - date1, 'DAY') AS diff_interval
  FROM your_table
);


Здесь date1 и date2 - это две даты, разницу в которых вы хотите найти, а your_table - это таблица, содержащая эти даты. Результат будет представлен в формате hh:mm.