sql獲取當天零點


 

SQL Server

-- 獲取當天零點
select
convert(varchar(10), getdate(), 120)+' 00:00:00'

 

 

Oracle

-- 取得當天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點

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM