oracle日期分組查詢的完整實例
前言
在做數(shù)據(jù)報表時,需要對某一時間段分組,以1小時為時間間隔統(tǒng)計各項數(shù)據(jù),如9點-10點,10點-11點…,但是現(xiàn)在有種情況,時間有可能不是整點開始,會有半點的情況,9點30,需要按照9點30-10點30,10點30-11點30分組統(tǒng)計
實現(xiàn)
以時間范圍起始時間作為參照時間,計算與其差值(分)/所需時間間隔(1小時)
得出值作為分組依據(jù)。
例子
select xx,
floor(
floor(
(refDate-to_date('2021-02-05 08:30','yyyy-MM-dd hh24:mi:ss'))
* 24 * 60) / 60
) factor
where refDate >=to_date('2021-02-05 08:30','yyyy-MM-dd hh24:mi:ss')
and refDate <=....
floor:取整用
refDate:每條數(shù)據(jù)中的日期字段
2021-02-05 08:30:參照時間
factor:算出的分組依據(jù)

以上查詢范圍是21:30-23:30,以21.30作為參照時間,可將時間段劃分為21.30-22:30,22:30-23:30。。
在此基礎(chǔ)上查詢時間所屬時間段

以上通過 factor/24 含義為間隔一小時, 可以通過改變這兩個值任意組合時間間隔。
總結(jié)
到此這篇關(guān)于oracle日期分組查詢的文章就介紹到這了,更多相關(guān)oracle日期分組查詢內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
兩種oracle創(chuàng)建字段自增長的實現(xiàn)方式
這篇文章介紹了兩種oracle創(chuàng)建字段自增長的實現(xiàn)方式,一是序列+觸發(fā)器,二是序列+顯示調(diào)用序列,需要的朋友可以參考下2015-07-07
oracle表空間不足ORA-01653的問題:?unable?to?extend?table
這篇文章主要介紹了oracle表空間不足ORA-01653:?unable?to?extend?table的問題?,出現(xiàn)這種表空間不足的問題一般有兩種情況:一種是表空間的自動擴展功能沒有打開,另一種確實是表空間確實不夠用了,已經(jīng)達到了擴展的極限,本文給大家分享解決方法,需要的朋友參考下2022-08-08
使用PLSQL遠程連接Oracle數(shù)據(jù)庫的方法(內(nèi)網(wǎng)穿透)
Oracle數(shù)據(jù)庫來源于知名大廠甲骨文公司,是一款通用數(shù)據(jù)庫系統(tǒng),能提供完整的數(shù)據(jù)管理功能,而Oracle數(shù)據(jù)庫時關(guān)系數(shù)據(jù)庫的典型代表,其數(shù)據(jù)關(guān)系設計完備,這篇文章主要介紹了使用PLSQL遠程連接Oracle數(shù)據(jù)庫的方法(內(nèi)網(wǎng)穿透),需要的朋友可以參考下2023-03-03
oracle 監(jiān)聽 lsnrctl 命令 (推薦)
這篇文章主要介紹了oracle 監(jiān)聽 lsnrctl 命令 ,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2017-03-03

