SQL DATEADD 函式

摘要:在本教程中,您將學習如何使用 SQL DATEADD() 函式向日期新增一個時間間隔。

請注意,DATEADD 函式未包含在 SQL 標準中,只有 SQL Server 支援它。

SQL DATEADD 函式簡介 #

要向日期新增一個時間間隔(例如,一年、一個月或一天),您可以使用 SQL DATEADD() 函式。

以下是 DATEADD 函式的語法

DATEADD (datepart , number , date )Code language: SQL (Structured Query Language) (sql)

在此語法中:

  • datepart 是要新增時間間隔的日期部分。
  • number 是一個字面整數或一個可以計算為整數的表示式,函式會將其加到 datedatepart 部分。
  • date 是函式要新增時間間隔的日期。它可以是一個字面值或一個可以計算為 DATEDATETIME 值的表示式。

DATEADD() 函式返回的資料型別與 date 引數的資料型別相同。

下表顯示了 datepart 的有效值

有效的日期部分縮寫
yy, yyyy
季度qq, q
mm, m
年中的日dy, y
dd, d
wk, ww
星期dw, w
小時hh
分鐘mi, n
ss, s
毫秒ms
微秒mcs
納秒ns

SQL DATEADD 函式示例 #

以下查詢使用 DATEADD() 函式向一個日期新增一年

SELECT DATEADD(year, 1, '2018-01-01');Code language: SQL (Structured Query Language) (sql)

輸出

2019-01-01 00:00:00.000Code language: SQL (Structured Query Language) (sql)

以下示例使用 DATEADD() 函式向一個日期新增兩個月

SELECT DATEADD(month, 2, '2018-01-01');Code language: SQL (Structured Query Language) (sql)

輸出

2018-03-01 00:00:00.000Code language: SQL (Structured Query Language) (sql)

以下示例使用 DATEADD() 函式向一個日期新增 30 天

SELECT DATEADD(day, 30, '2018-01-01');Code language: SQL (Structured Query Language) (sql)

輸出

2018-01-31 00:00:00.000Code language: SQL (Structured Query Language) (sql)

除了向日期新增時間間隔外,您還可以使用 DATEADD() 函式從日期中減去一個時間間隔。例如

SELECT DATEADD(day,-1,'2018-01-01');Code language: SQL (Structured Query Language) (sql)

在此示例中,我們從 2018年1月1日 這個日期減去一天,返回以下結果

2017-12-31 00:00:00.000Code language: SQL (Structured Query Language) (sql)

摘要 #

  • 使用 SQL DATEADD() 函式向日期新增一個時間間隔。
本教程是否有幫助?
© .