sql >> データベース >  >> RDS >> Oracle

2つの日付の間の月名、曜日名、週番号、および日番号を生成します

    行ジェネレータを使用すると簡単です。 方法。残りはフォーマットマスクのみです 。

    SQL * Plusの場合 、私のデモは '2012-01-01'の日付の間にあります および'2012-02-20'

    SQL> def date_start = '2012-01-01'
    SQL> def date_end   = '2012-02-20'
    SQL>
    SQL> WITH DATA AS
      2    (SELECT to_date('&date_start', 'YYYY-MM-DD') date1,
      3      to_date('&date_end', 'YYYY-MM-DD') date2
      4    FROM dual
      5    )
      6  SELECT TO_CHAR(date1+LEVEL-1, 'fmMonth') month_name,
      7         TO_CHAR(date1+LEVEL-1, 'fmDay') day_name,
      8         TO_CHAR(date1+LEVEL-1, 'IW') the_week,
      9         TO_CHAR(date1+level-1, 'D') the_day
     10  FROM data
     11    CONNECT BY LEVEL <= date2-date1+1
     12  /
    old   2:   (SELECT to_date('&date_start', 'YYYY-MM-DD') date1,
    new   2:   (SELECT to_date('2012-01-01', 'YYYY-MM-DD') date1,
    old   3:     to_date('&date_end', 'YYYY-MM-DD') date2
    new   3:     to_date('2012-02-20', 'YYYY-MM-DD') date2
    

    結果

    MONTH_NAME DAY_NAME  THE_WEEK THE_DAY
    ---------- --------- -------- -------
    January    Sunday    52       1
    January    Monday    01       2
    January    Tuesday   01       3
    January    Wednesday 01       4
    January    Thursday  01       5
    January    Friday    01       6
    January    Saturday  01       7
    January    Sunday    01       1
    January    Monday    02       2
    January    Tuesday   02       3
    January    Wednesday 02       4
    January    Thursday  02       5
    January    Friday    02       6
    January    Saturday  02       7
    January    Sunday    02       1
    January    Monday    03       2
    January    Tuesday   03       3
    January    Wednesday 03       4
    January    Thursday  03       5
    January    Friday    03       6
    January    Saturday  03       7
    January    Sunday    03       1
    January    Monday    04       2
    January    Tuesday   04       3
    January    Wednesday 04       4
    January    Thursday  04       5
    January    Friday    04       6
    January    Saturday  04       7
    January    Sunday    04       1
    January    Monday    05       2
    January    Tuesday   05       3
    February   Wednesday 05       4
    February   Thursday  05       5
    February   Friday    05       6
    February   Saturday  05       7
    February   Sunday    05       1
    February   Monday    06       2
    February   Tuesday   06       3
    February   Wednesday 06       4
    February   Thursday  06       5
    February   Friday    06       6
    February   Saturday  06       7
    February   Sunday    06       1
    February   Monday    07       2
    February   Tuesday   07       3
    February   Wednesday 07       4
    February   Thursday  07       5
    February   Friday    07       6
    February   Saturday  07       7
    February   Sunday    07       1
    February   Monday    08       2
    
    51 rows selected.
    
    SQL>
    



    1. phpajaxmysqlを使用して3つの依存ドロップダウンリストを作成します

    2. EclipseLinkとJoda-Timeを使用してUTCで日時をデータベースに保存するにはどうすればよいですか?

    3. スライドデッキと#SQLintersectionのサンプル

    4. ウィンドウ7のローカルホスト(10061)のMySQLサーバーに接続できません