本文實(shí)例講述了oracle實(shí)現(xiàn)動(dòng)態(tài)查詢前一天早八點(diǎn)到當(dāng)天早八點(diǎn)的數(shù)據(jù)。分享給大家供大家參考,具體如下:
需要查詢前一天早八點(diǎn)到當(dāng)天早八點(diǎn)的數(shù)據(jù)
這里是查詢sql語句
SELECT
DEPT_ID,
COUNT( * ) DID
FROM
"MES_MACH_CALL_EVENT"
WHERE
CALL_TIME >= trunc(sysdate-1)+8/24
AND CALL_TIME = trunc(sysdate)+8/24
GROUP BY
DEPT_ID
現(xiàn)在單獨(dú)來看一下獲取系統(tǒng)當(dāng)天八點(diǎn)和前一天八點(diǎn)的方法
SELECT trunc(sysdate)+8/24 FROM DUAL;
SELECT trunc(sysdate-1)+8/24 FROM DUAL;
+8/24為24小時(shí)制中的早八點(diǎn)
其中trunc函數(shù)的用法為
【trunc(for dates)】TRUNC()函數(shù)處理日期
語法格式:TRUNC(date[,fmt])
其中:date 一個(gè)日期值;fmt 日期格式。
該日期將按指定的日期格式截?。缓雎运鼊t由最近的日期截取。
示例:
select trunc(sysdate) from dual;–2017/2/13,返回當(dāng)前時(shí)間
select trunc(sysdate,'yy') from dual;–2017/1/1,返回當(dāng)年第一天
select trunc(sysdate,'mm') from dual;–2017/2/1,返回當(dāng)月的第一天
select trunc(sysdate,'d') from dual;–2017/2/12,返回當(dāng)前星期的第一天,即星期天
select trunc(sysdate,'dd') from dual;–2017/2/13,返回當(dāng)前日期,今天是2017/2/13
select trunc(sysdate ,'HH24') from dual;–2017/2/13 15:00:00,返回本小時(shí)的開始時(shí)間
select trunc(sysdate ,'MI') from dual;–2017/2/13 15:13:00,返回本分鐘的開始時(shí)間
更多關(guān)于Oracle相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Oracle常用函數(shù)匯總》、《Oracle日期與時(shí)間操作技巧總結(jié)》及《php+Oracle數(shù)據(jù)庫程序設(shè)計(jì)技巧總結(jié)》
希望本文所述對(duì)大家Oracle數(shù)據(jù)庫程序設(shè)計(jì)有所幫助。
您可能感興趣的文章:- oracle 查詢當(dāng)天數(shù)據(jù)的sql條件寫法
- oracle使用to_date查詢一周的第一天日期
- Oracle查詢最近幾天每小時(shí)歸檔日志產(chǎn)生數(shù)量的腳本寫法
- oracle實(shí)現(xiàn)按天,周,月,季度,年查詢排序方法
- Oracle 獲取上周一到周末日期的查詢sql語句
- Oracle中查詢本月星期5的所有日期列表的語句
- Oracle查詢優(yōu)化日期運(yùn)算實(shí)例詳解
- oracle查詢截至到當(dāng)前日期月份所在年份的所有月份
- Oracle實(shí)現(xiàn)查詢2個(gè)日期所跨過的月份列表/日期列表的方法分析