SQL Serveroracle
-- 獲取當天零點
select convert(varchar(10), getdate(), 120)+' 00:00:00'
Oraclespa
-- 取得當天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點