前言
在做數(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)文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- oracle日期時間型timestamp的深入理解
- Oracle 獲取上周一到周末日期的查詢sql語句
- Oracle 函數(shù)大全[字符串函數(shù),數(shù)學(xué)函數(shù),日期函數(shù)]
- Oracle插入日期數(shù)據(jù)常見的2個問題和解決方法
- oracle查看當(dāng)前日期是第幾個星期的方法
- Oracle to_char 日期轉(zhuǎn)換字符串語句分享
- 詳解oracle 日期格式(總結(jié))
- oracle 日期時間函數(shù)使用總結(jié)
- ORACLE 毫秒與日期的相互轉(zhuǎn)換示例
- oracle 日期函數(shù)集合(集中版本)