sqlserver計算時間差DATEDIFF 函式

2021-09-26 09:31:27 字數 1691 閱讀 4844

datediff 函式 [日期和時間]

功能

返回兩個日期之間的間隔。

語法

datediff ( date-part, date-expression-1, date-expression-2 )

date-part :

year | quarter | month | week | day | hour | minute | second | millisecond

引數

date-part 指定要測量其間隔的日期部分。

有關日期部分的詳細資訊,請參見日期部分。

date-expression-1 某一間隔的起始日期。從 date-expression-2 中減去該值,返回兩個引數之間 date-parts 的天數。

date-expression-2 某一間隔的結束日期。從該值中減去 date-expression-1,返回兩個引數之間 date-parts 的天數。

用法

此函式計算兩個指定日期之間日期部分的數目。結果為日期部分中等於(date2 - date1)的有符號的整數值。

當結果不是日期部分的偶數倍時,datediff 將被截斷而不是被捨入。

當使用 day 作為日期部分時,datediff 返回兩個指定的時間之間(包括第二個日期但不包括第乙個日期)的午夜數。

當使用 month 作為日期部分時,datediff 返回兩個日期之間(包括第二個日期但不包括第乙個日期)出現的月的第一天的數目。

當使用 week 作為日期部分時,datediff 返回兩個日期(包括第二個日期但不包括第乙個日期)之間星期日的數目。

對於更小的時間單位存在溢位值:

milliseconds 24 天

seconds 68 年

minutes 4083 年

others 沒有溢位限制

如果超出這些限制,此函式將返回溢位錯誤。

標準和相容性

sql/92 transact-sql 擴充套件。

sql/99 transact-sql 擴充套件。

sybase 與 adaptive server enterprise 相容。

下面示例的語句返回 1:

select datediff( hour, '4:00am', '5:50am' )
下面的語句返回 102:

select datediff( month, '1987/05/02', '1995/11/15' )
下面的語句返回 0:

select datediff( day, '00:00', '23:59' )
下面的語句返回 4:

select datediff( day,'1999/07/19 00:00','1999/07/23 23:59' )
下面的語句返回 0:

select datediff( month, '1999/07/19', '1999/07/23' )
下面的語句返回 1:

select datediff( month, '1999/07/19', '1999/08/23' )
分類: 資料庫, 資料庫函式(sql server)

sqlserver計算時間差DATEDIFF 函式

datediff 函式 日期和時間 功能 返回兩個日期之間的間隔。語法 datediff date part,date expression 1,date expression 2 date part year quarter month week day hour minute second mi...

計算時間差

計算時間差的問題,之前用的datediff datediff 返回跨兩個指定日期的日期和時間邊界數。語法datediff datepart startdate enddate 引數datepart 是規定了應在日期的哪一部分計算差額的引數。下表列出了 microsoft sql server 識別的...

計算時間差

php 初始化變數 stardate substr gstardate,0,10 enddate substr genddate,0,10 共有多少天 start mktime 0,0,0,substr stardate,5,2 substr stardate,8,2 substr stardate...