--取得当天0时0分0秒
select TRUNC(SYSDATE) FROM dual;
--取得当天23时59分59秒(在当天0时0分0秒的基础上加1天后再减1秒)
SELECT TRUNC(SYSDATE)+1-1/86400 FROM dual;
--取得当前日期是一个星期中的第几天,注意:星期日是第一天
select to_char(sysdate,'D'),to_char(sysdate,'DAY') from dual;
--在oracle中如何得到当天月份的第一天和最后一天
select to_char(sysdate,'yyyy-mm')||'-01' firstday,to_char(last_day(sysdate),'yyyy-mm-dd') lastday from dual
--实现当天16点前数据减去昨天16点的,过了16点减去今天16点
select field1, field2 from mytable
where time = decode(sign(sysdate-trunc(sysdate)-16/24), --时间判断
-1,trunc(sysdate)-1+16/24, --小于16点取昨天16点
trunc(sysdate)+16/24) --大于16点取当天16点
相关阅读:Oracle 中的 TO_DATE 和 TO_CHAR 函数<style type="text/css"> .csharpcode, .csharpcode pre { font-size: small; color: black; font-family: consolas, "Courier New", courier, monospace; background-color: #ffffff; /*white-space: pre;*/ } .csharpcode pre { margin: 0em; } .csharpcode .rem { color: #008000; } .csharpcode .kwrd { color: #0000ff; } .csharpcode .str { color: #006080; } .csharpcode .op { color: #0000c0; } .csharpcode .preproc { color: #cc6633; } .csharpcode .asp { background-color: #ffff00; } .csharpcode .html { color: #800000; } .csharpcode .attr { color: #ff0000; } .csharpcode .alt { background-color: #f4f4f4; width: 100%; margin: 0em; } .csharpcode .lnum { color: #606060; }</style>
本文介绍了Oracle数据库中关于日期处理的实用技巧,包括获取当天的起止时间、确定当前日期是一周中的哪一天、以及如何得到当月的第一天和最后一天等。此外,还提供了一种方法来根据特定时间点(如每天16点)进行数据对比。
889

被折叠的 条评论
为什么被折叠?



