Получить количество дней между двумя датами в Oracle, включая даты
Я хочу получить общее количество дней между двумя указанными датами. Я пробовал приведенный ниже запрос, но не получил точного отличия; последняя дата не включается.
select (to_date ('15-06-13','dd-MM-yyyy') - to_date('01-02-12','dd-MM-yyyy'))
from dual
Это должно вернуть 501 дней, но вместо этого он возвращает 500 дней. Если я добавлю +1 после расчета, то я получу правильный результат.
Мне действительно нужно включить +1 или есть альтернативный подход для получения фактического результата?
1 ответов
в Oracle substracting two dates возвращает количество дней между двумя датами.
А minus
оператор работает так же, как и для чисел:
20 - 20 = 0 ===> 2013-05-20 - 2013-05-20 = 0
25 - 20 = 5 ===> 2013-05-25 - 2013-05-20 = 5
если вы хотите включить last number
или last date
, вам нужно добавить 1:
20 - 20 + 1 = 1 ===> 2013-05-20 - 2013-05-20 + 1 = 1
25 - 20 + 1 = 6 ===> 2013-05-25 - 2013-05-20 + 1 = 6