DATEADD (Transact-SQL)

更新: 2006 年 4 月 14 日

根據在指定日期中加入間隔來傳回新的 datetime 值。

主題連結圖示Transact-SQL 語法慣例

語法

DATEADD (datepart , number, date )

引數

  • datepart
    這是指定要根據日期的哪個部份來傳回新值的參數。下表列出 Microsoft SQL Server 2005 所識別之日期部份和縮寫。

    日期部份 縮寫

    year

    yy, yyyy

    quarter

    qq, q

    month

    mm, m

    dayofyear

    dy, y

    day

    dd, d

    week

    wk, ww

    weekday

    dw, w

    hour

    hh

    minute

    mi, n

    second

    ss, s

    millisecond

    ms

  • number
    這是用來遞增 datepart 的值。如果您指定不是整數的值,就會捨棄值的小數點後數字部份。例如,如果 datepart 指定 daynumber 指定 1.75date 就會遞增 1。
  • date
    這是傳回 datetimesmalldatetime 值或日期格式之字元字串的運算式。如需有關指定日期的詳細資訊,請參閱<日期和時間 (Transact-SQL)>。

    如果您只指定年份的最後兩位數,小於或等於 two digit year cutoff 組態選項值最後兩位數的值,便屬於截止年份的相同世紀。大於這個選項值最後兩位數的值,便屬於截止年份的上一世紀。例如,如果 two-digit year cutoff 是 2049 (預設值),49 便會解譯為 2049,50 會解譯為 1950。若要避免模稜兩可,請使用四位數年份。

傳回類型

傳回 datetime,但如果 date 引數是 smalldatetime,便傳回 smalldatetime

備註

datepart 為月份時,月份中的天數會影響結果。例如,八月有 31 天,而九月有 30 天。下列兩個陳述式都會傳回 2006-09-30 00:00:00.000

SELECT DATEADD(month, 1, '08/30/2006')
SELECT DATEADD(month, 1, '08/31/2006')

換句話說,在八月底加入一個月就會傳回九月的最後一天。

範例

下列範例會列印 AdventureWorks 資料庫中之訂單的時間框架清單。這個時間框架代表現有的訂購日期加上 21 天。

USE AdventureWorks;
GO
SELECT DATEADD(day, 21, OrderDate)AS TimeFrame 
FROM Sales.SalesOrderHeader;
GO

請參閱

參考

CAST 和 CONVERT (Transact-SQL)
資料類型 (Transact-SQL)
日期和時間函數 (Transact-SQL)

其他資源

ISO 8601 格式
字母日期格式
數值日期格式
ODBC 日期時間格式
時間格式
未分隔的字串格式

說明及資訊

取得 SQL Server 2005 協助

變更歷程記錄

版本 歷程記錄

2006 年 4 月 14 日

新增內容:
  • 新增「備註」一節。