获取Oracle中两个日期之间的天数,包括日期

use*_*441 11 oracle date-arithmetic oracle11g

我想获得两个提供日期之间的总天数.我已经尝试了以下查询,但没有得到完全不同的; 最后一个日期未包括在内.

select (to_date ('15-06-13','dd-MM-yyyy') - to_date('01-02-12','dd-MM-yyyy')) 
  from dual
Run Code Online (Sandbox Code Playgroud)

这应该返回501天,但它返回500天.如果我在计算后添加+1,那么我得到了正确的结果.

我真的需要加入+1还是有其他方法来获得实际结果?

kro*_*lko 17

在Oracle中,减去两个日期会返回两个日期之间的天数.
一个minus操作符以同样的方式作为数字:

20 - 20 = 0   ===>      2013-05-20  -  2013-05-20 = 0
25 - 20 = 5   ===>      2013-05-25  -  2013-05-20 = 5
Run Code Online (Sandbox Code Playgroud)

如果要包含last numberlast 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
Run Code Online (Sandbox Code Playgroud)