oracle 列出指定時間範圍內的所有月份

2021-09-01 14:40:25 字數 802 閱讀 8646

今天在做乙個系統的時候要到這麼乙個需求:

按月份統計出指定時間範圍內的資料量,寫好sql後執行發現當某個月份不存在資料時,這個月份在統計列表中就不會出現。所以要想辦法將給出的時間範圍內的所有月份列出來然後和之前的統計結果做乙個左關聯就ok了。

核心**:

第一種方法:

select to_char(

add_months(to_date('2011-03', 'yyyy-mm'), rownum - 1),

'yyyy-mm'

) as yearmonth

from dual

connect by rownum <= (

select months_between(to_date('2012-07', 'yyyy-mm'),

to_date('2011-03', 'yyyy-mm')) from dual

)

第二種方法:

select to_char(

add_months(to_date('2011-03', 'yyyy-mm'), rownum - 1),

'yyyy-mm'

) as yearmonth

from all_objects

where rownum <= (

select months_between(to_date('2012-07', 'yyyy-mm'),

to_date('2011-03', 'yyyy-mm')) from dual

)

java判斷當前時間是否在指定時間範圍內的例項

有些時候,要判斷當前時間是否在乙個時間範圍內,比如時間範圍是 08 00 20 00 在這個範圍內是營業時間,如果不在則說明打烊了.下面是 string businesstime 08 00 20 00 string strs businesstime.split string strs1 strs...

Oracle 列出日期範圍內的所有日期月份

1 列出日期 已知開始日期和結束日期,如何用一條sql得出這個範圍內的所有日期。eg 已知 2007 04 25 2007 05 02 得出 2007 04 25 2007 04 26 2007 04 27 2007 04 28 2007 04 29 2007 04 30 2007 05 01 20...

原創 shell產生指定範圍內的隨機時間

如果我們想產生,像圖示格式的隨機時間怎麼辦?bin sh 產生指定範圍的隨機年月日 yy mm dd hh mm ss 以10年為例 1 定義4個函式 2 呼叫函式,拼接輸出字串 created by 楓林閣小二 定義函式,產生隨機年月日 ran ymd days ago y m d echo 產生...