Oracle展示時間段內的所有時間

2021-09-11 14:08:12 字數 1306 閱讀 2862

select

to_char ( trunc ( to_date ( '$', 'yyyy-mm-dd' ), 'dd' ) + rownum - 1, 'yyyy-mm-dd' ) as ywscsj  

from

dual connect by rownum < trunc ( to_date ( '$', 'yyyy-mm-dd' ), 'dd' ) - trunc ( to_date ( '$', 'yyyy-mm-dd' ), 'dd' ) + 1 ;

上訴sql可查詢出指定字串時間之間的所有時間,$可傳入引數值如「2019-02-01」,$可傳入引數值如「2019-03-02」,查出結果如下:

ywscsj 

2019-02-01

2019-02-02

2019-02-03

2019-02-04

2019-02-05

2019-02-06

2019-02-07

2019-02-08

2019-02-09

2019-02-10

2019-02-11

2019-02-12

2019-02-13

2019-02-14

2019-02-15

2019-02-16

2019-02-17

2019-02-18

2019-02-19

2019-02-20

2019-02-21

2019-02-22

2019-02-23

2019-02-24

2019-02-25

2019-02-26

2019-02-27

2019-02-28

2019-03-01

查詢sql如下所示:

select

to_char( trunc( to_date( '2019-02-01', 'yyyy-mm-dd' ), 'dd' ) + rownum - 1, 'yyyy-mm-dd' ) as ywscsj 

from

dual connect by rownum < trunc( to_date( '2019-03-02', 'yyyy-mm-dd' ), 'dd' ) - trunc( to_date( '2019-02-01', 'yyyy-mm-dd' ), 'dd' ) + 1;

可見時間引數是前閉後開的!

傳入引數的時候需要注意!其中用到了orcale專有函式to_char、to_date、trunc,特殊變數rownum,特有連線connect by和專有表dual。

Oracle 獲取時間段內的所有周

orcle獲取時間段內的所有周 包括周一日期,週日日期,該年的第幾周 首先要獲取一段時間內的所有日期,然後再獲取時間段內的每個周一,週日,第幾周。例如下面 下面的2017 03 02為開始日期,2017 05 02為結束日期 select trunc to date 2017 03 02 yyyy ...

js,計算時間段內所有年月

工作中遇到這麼乙個問題,計算時間段內的所有年月。後來想了下,元件中有時間選擇器元件,覺得有必要整理一下,所有就有了下面的 function getmonthbetween start,end else 正常月份 str curr.getfullyear month 將此年月加入陣列 result.p...

Oracle時間段查詢

獲取某一天的資料 select d.device name as 裝置,d.alert time 時間 from device d where d.alert time between to date 2010 9 27 00 00 00 yyyy mm dd hh24 mi ss and to d...