年の計算
DATEADD 関数の引数に 定数 year を指定し、加算・減算したい年数 と 日付 を渡します。1年前の日付 = DATEADD(year, -1, 日付)
1年後の日付 = DATEADD(year, 1, 日付)
サンプルSQL
--結果 = 2024-01-01 00:00:00.000
SELECT DATEADD(year, -1, '2025/01/01')
--結果 = 2026-01-01 00:00:00.000
SELECT DATEADD(year, 1, '2025/01/01')
月の計算
DATEADD 関数の引数に 定数 month を指定し、加算・減算したい月数 と 日付 を渡します。一カ月前の日付 = DATEADD(month, -1, 日付)
一カ月後の日付 = DATEADD(month, 1, 日付)
サンプルSQL
--結果 = 2024-12-01 00:00:00.000
SELECT DATEADD(month, -1, '2025/01/01')
--結果 = 2025-02-01 00:00:00.000
SELECT DATEADD(month, 1, '2025/01/01')
日数の計算
DATEADD 関数の引数に 定数 day を指定し、加算・減算したい日数 と 日付 を渡します。1日前の日付 = DATEADD(day, -1, 日付)
1日後の日付 = DATEADD(day, 1, 日付)
サンプルSQL
--結果 = 2024-12-31 00:00:00.000
SELECT DATEADD(day, -1, '2025/01/01')
--結果 = 2025-01-02 00:00:00.000
SELECT DATEADD(day, 1, '2025/01/01')
検証環境
- Microsoft SQL Server 2019 (RTM-CU10) (KB5001090) - 15.0.4123.1 (X64) Mar 22 2021 18:10:24 Copyright (C) 2019 Microsoft Corporation Express Edition (64-bit) on Linux (Ubuntu 20.04.2 LTS) <X64>
- Docker image: mcr.microsoft.com/mssql/server:2019-latest
- Docker Desktop 3.5.2(66501)
- Docker Engine 20.10.7
- Docker Compose 1.29.2
- Microsoft SQL Server Management Studio v18.8(15.0.18369.0)
- Microsoft Windows 10 Pro Version 21H1 OS Build 19043.1151 Experience: Windows Feature Experience Pack 120.2212.3530.0