select
ceil((To_date(
'2008-05-02 00:00:00'
,
'yyyy-mm-dd hh24-mi-ss'
) - To_date(
'2008-04-30 23:59:59'
,
'yyyy-mm-dd hh24-mi-ss'
)) * 24 * 60 * 60 * 1000) 相差豪秒数
FROM
DUAL;
/*
相差豪秒数
86401000
1 row selected
*/
select
ceil((To_date(
'2008-05-02 00:00:00'
,
'yyyy-mm-dd hh24-mi-ss'
) - To_date(
'2008-04-30 23:59:59'
,
'yyyy-mm-dd hh24-mi-ss'
)) * 24 * 60 * 60) 相差秒数
FROM
DUAL;
/*
相差秒数
86401
1 row selected
*/
select
ceil(((To_date(
'2008-05-02 00:00:00'
,
'yyyy-mm-dd hh24-mi-ss'
) - To_date(
'2008-04-30 23:59:59'
,
'yyyy-mm-dd hh24-mi-ss'
))) * 24 * 60) 相差分钟数
FROM
DUAL;
/*
相差分钟数
1441
1 row selected
*/
select
ceil((To_date(
'2008-05-02 00:00:00'
,
'yyyy-mm-dd hh24-mi-ss'
) - To_date(
'2008-04-30 23:59:59'
,
'yyyy-mm-dd hh24-mi-ss'
)) * 24) 相差小时数
FROM
DUAL;
/*
相差小时数
25
1 row selected
*/
select
ceil((To_date(
'2008-05-02 00:00:00'
,
'yyyy-mm-dd hh24-mi-ss'
) - To_date(
'2008-04-30 23:59:59'
,
'yyyy-mm-dd hh24-mi-ss'
))) 相差天数
FROM
DUAL;
/*
相差天数
2
1 row selected
*/
select
(EXTRACT(
year
FROM
to_date(
'2009-05-01'
,
'yyyy-mm-dd'
)) - EXTRACT(
year
FROM
to_date(
'2008-04-30'
,
'yyyy-mm-dd'
))) * 12 +
EXTRACT(
month
FROM
to_date(
'2008-05-01'
,
'yyyy-mm-dd'
)) - EXTRACT(
month
FROM
to_date(
'2008-04-30'
,
'yyyy-mm-dd'
)) months
from
dual;
/*
MONTHS
13
1 row selected
*/
select
EXTRACT(
year
FROM
to_date(
'2009-05-01'
,
'yyyy-mm-dd'
)) - EXTRACT(
year
FROM
to_date(
'2008-04-30'
,
'yyyy-mm-dd'
)) years
from
dual;
/*
YEARS
1
1 row selected
*/