[SQL][MS-SQL] 對日期進行加減運算

工作遇到需要針對時間進行處理。

DATEADD  (datepart , number , date )  
根據datepart (型態,例:日、秒…)及number (正負整數)調整date (時間)
註:此函式有不少細節,建議看官方文件

SQL範例:

SELECT DATEADD(month, 1, '20060930');

-- 2006-10-30 00:00:00.000

-- -- 注意:10月有31天

SELECT DATEADD(month, 1, '2006-08-31');
-- 2006-09-30 00:00:00.000

SELECT DATEADD(month, 1, '2006-12-31');
-- 2007-01-31 00:00:00.000

常用datepart (形式),完整清單請看官方文件:
 

datepart 名稱datepart 縮寫
yeary、yy、yyyy
monthmm, m
daydd, d
hourhh
minutemi, n
secondss, s

參考資料:
DATEADD (Transact-SQL)

相關文章:
[SQL][MS-SQL] 取得兩筆日期之間的差距數

-- 組合運用,取得兩天前的日期
DATEADD(dd, DATEDIFF(dd, 0, getdate())-2, 0)
--當下時間:2022-07-19 15:18:41.970
--減兩天時間:2022-07-17 00:00:00.000

 

嘗試以自己的角度來整理並紀錄,也許會對一些人有幫助。

文章有錯、參考聯結有漏或是連結失效..等,還請幫忙告知,謝謝。
另外參考資料中有很多更棒的文章,建議多看看。