任何想法如何四舍五入 SYSDATE。
例如,现在的 sysdate 是11.31
,我希望它四舍五入到12.00
,但我希望输出是 just 12
,如果 Sysdate 是11.29
,则输出是11
。
谢谢
使用ROUND
函数,然后TO_CHAR
。
select to_char(round(to_date('11:31','hh24:mi'), 'HH'), 'HH24') from dual
-> 12
select to_char(round(to_date('11:29','hh24:mi'), 'HH'), 'HH24') from dual
-> 11
ROUND((SYSDATE-TRUNC(SYSDATE))*24)
说明:TRUNC
如果没有第二个参数,则为当前日期的 00:00:00 时间。通过减法,我们得到差异(以天为单位),然后将其缩放到小时和四舍五入。