sql求解兩個時間差
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
下面的語句返回 102: SELECTdatediff( month, '1987/05/02', '1995/11/15' )
下面的語句返回 0: SELECTdatediff( day, '00:00', '23:59' )
下面的語句返回 4: SELECT datediff( day,'1999/07/19 00:00','1999/07/23 23:59' )
下面的語句返回 0: SELECTdatediff( month, '1999/07/19', '1999/07/23' )
下面的語句返回 1: SELECTdatediff( month, '1999/07/19', '1999/08/23' )