【SQL Server】日付・時刻系関数

~簡単な自己紹介~

  • 嫁と猫3匹と暮らすフルリモートの三十路SE
  • ブリッジSE的なポジションを務めることが多く、チーム運営、顧客折衝、ベンダーコントロールが得意
  • 投資・節約・副業で資産形成中
  • 現在の金融資産は約1,650万円、めざせアッパーマス層(資産3,000万円)

現在日付・現在時刻を取得する

現在日時

SELECT GETDATE(); -- 例:2024/08/23 16:27:43.197

○○を取得する/フォーマット

年(YEAR)

SELECT YEAR('2023/12/31'); -- 2023

月(MONTH)

SELECT MONTH('2023/12/31'); -- 12

日(DAY)

SELECT DAY('2023/12/31'); -- 31

日付

SELECT FORMAT(GETDATE(), 'yyyy-MM-dd'); -- 例:2024-08-31

日付の加算・減算

n日後・n日前

SELECT
    DATEADD(DAY, 1, '2023/12/31'), -- 2024/01/01
    DATEADD(DAY, -1, '2023/12/31') -- 2023/12/30
;

n月後・n月前

SELECT
    DATEADD(MONTH, 1, '2023/12/31'), -- 2024/01/31
    DATEADD(MONTH, -1, '2023/12/31') -- 2023/11/30
;

n年後・n年前

SELECT
    DATEADD(YEAR, 1, '2023/12/31'), -- 2024/12/31
    DATEADD(YEAR, -1, '2023/12/31') -- 2022/12/31
;

n週後・n週前

SELECT
    DATEADD(WEEK, 1, '2023/12/31'), -- 2024/01/07
    DATEADD(WEEK, -1, '2023/12/31') -- 2022/12/24
;

以上になります。

お疲れさまでした。

Follow me!