當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


SQL Server DATEDIFF()用法及代碼示例


DATEDIFF()函數:
SQL Server中的此函數用於查找兩個指定日期之間的差額。

特征:

  • 此函數用於查找兩個給定日期值之間的差異。
  • 此函數位於日期函數下。
  • 此函數接受三個參數,即間隔,日期的第一個值和日期的第二個值。
  • 此函數可以在間隔部分和日期值部分包括時間。

用法:

DATEDIFF(interval, date1, date2)

參數:
此方法接受以下三個參數:

  • interval:這是要返回的指定零件。此外,間隔的值可以如下所示:
  1. year,yyyy,yy =年,這是指定的年份。
  2. 季度,qq,q =季度,即指定的季度。
  3. month,mm,m = month,即指定的月份。
  4. dayofyear,dy,y =一年中的一天,這是一年中的指定日期。
  5. day,dd,d = Day,即指定的日期。
  6. 周,ww,周=周,即指定的周。
  7. 工作日,dw,w =工作日,即指定的工作日。
  8. 小時,hh =小時,這是指定的小時。
  9. 分鍾,英裏,n =分鍾,即指定的分鍾。
  10. second,ss,s = Second,它是指定的秒數。
  11. 毫秒,ms =毫秒,這是指定的毫秒。
  • date1,date2:這兩個指定的日期是為了找到它們之間的差異。

返回值:
它返回兩個指定日期之間的差額。



示例1:
使用DATEDIFF()函數並獲取日期的兩個值之間的差(以年為單位)。

SELECT DATEDIFF(year, '2010/01/12', '2021/01/12');

輸出:

11

示例-2:
使用DATEDIFF()函數並獲取兩個日期值之間的差(以月為單位)。

SELECT DATEDIFF(month, '2010/2/12', '2021/12/12');

輸出:

142

示例3:
使用DATEDIFF()函數並獲取日期的兩個值之間的負差(以天為單位)。

SELECT DATEDIFF(day, '2021/2/1', '2010/12/12');

輸出:

-3704

示例4:
使用DATEDIFF()函數並獲取兩個日期值之間的時差,其中還包括時間(以小時為單位)。

SELECT DATEDIFF(hour, '2019/2/1 09:55', '2020/12/12 07:45');

輸出:

16318

示例5:
使用DATEDIFF()函數,並使用包含時間的變量(以秒為單位)獲取日期的兩個值之間的差。

DECLARE @date1 VARCHAR(50);
DECLARE @date2 VARCHAR(50);
SET @date1 = '2019/2/1 09:55:44';
SET @date2 = '2020/12/12 07:45:22';
SELECT DATEDIFF(second, @date1, @date2);

輸出:

58744178

應用:
此函數用於查找兩個指定日期值之間的差異。

相關用法


注:本文由純淨天空篩選整理自nidhi1352singh大神的英文原創作品 DATEDIFF() Function in SQL Server。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。