sql 数据库语句中日期相减

时间:2025-03-18 20:59:30

sql中两个日期相减

1、相差天数

select trunc(sysdate,'yyyy')-to_date('2009-01-04','yyyy-mm-dd') from dual;

2、相差月数

select months_between(trunc(sysdate,'mm'),to_date('2009-01','yyyy-mm')) from dual;

3、相差年数

select trunc((months_between(trunc(sysdate,'dd'),to_date('2009-01-01','yyyy-mm-dd')))/12) from dual;

4、select datediff( day, '2008.08.25', '2008.09.01' )

5、select datediff( second, '2009-8-25 12:15:12', '2009-9-1 7:18:20') --返回相差秒数

6、

select datediff( minute, '2009-8-25 12:15:12', '2009-9-1 7:18:20') --返回相差分钟数

7、

select datediff( hour, '2009-8-25 12:15:12', '2009-9-1 7:18:20') --返回相差小时数

问题三:select datediff( day, 2009-8-25 12:15:12', 2009-9-1 7:18:20')

如果:datediff不行可以试试 timestampdiff 用法一样的

--时间差函数---timestampdiff