主頁 > 知識庫 > MySQL DATEDIFF函數獲取兩個日期的時間間隔的方法

MySQL DATEDIFF函數獲取兩個日期的時間間隔的方法

熱門標簽:常州電銷外呼系統(tǒng)一般多少錢 云南語音外呼系統(tǒng)平臺 房產智能外呼系統(tǒng)品牌 天智外呼系統(tǒng) 北京人工外呼系統(tǒng)價錢 沃克斯電梯外呼線路圖 福州呼叫中心外呼系統(tǒng)哪家好 400電話鄭州申請 地圖標注被騙三百怎么辦

描述

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

語法

DateDiff(interval, date1, date2 [ ,firstdayofweek[ , firstweekofyear]] )

DateDiff 函數的語法有以下參數:

參數 描述
interval 必選。字符串表達式,表示用于計算 date1 和 date2 之間的時間間隔。有關數值,請參閱“設置”部分。
date1, date2 必選。日期表達式。用于計算的兩個日期。
firstdayofweek 可選。指定星期中第一天的常數。如果沒有指定,則默認為星期日。有關數值,請參閱“設置”部分。
firstweekofyear 可選。指定一年中第一周的常數。如果沒有指定,則默認為 1 月 1 日所在的星期。有關數值,請參閱“設置”部分。

設置

interval 參數可以有以下值:

設置 描述
yyyy
q 季度
m
y 一年的日數
d
w 一周的日數
ww
h 小時
m 分鐘
s

firstdayofweek 參數可以有以下值:

常數      值                            描述
vbUseSystem 0 使用區(qū)域語言支持 (NLS) API 設置。
vbSunday 1 星期日(默認)
vbMonday 2 星期一
vbTuesday 3 星期二
vbWednesday 4 星期三
vbThursday 5 星期四
vbFriday 6 星期五
vbSaturday 7 星期六

firstweekofyear 參數可以有以下值:

常數 描述
vbUseSystem 0 使用區(qū)域語言支持 (NLS) API 設置。
vbFirstJan1 1 由 1 月 1 日所在的星期開始(默認)。
vbFirstFourDays 2 由在新年中至少有四天的第一周開始。
vbFirstFullWeek 3 由在新的一年中第一個完整的周開始。

說明

DateDiff 函數用于判斷在兩個日期之間存在的指定時間間隔的數目。例如可以使用  DateDiff 計算兩個日期相差的天數,或者當天到當年最后一天之間的星期數。

要計算 date1 和 date2 相差的天數,可以使用“一年的日數”(“y”)或“日”(“d”)。當 interval 為“一周的日數”(“w”)時,DateDiff 返回兩個日期之間的星期數。如果 date1 是星期一,則DateDiff 計算到 date2 之前星期一的數目。此結果包含 date2 而不包含 date1。如果 interval 是“周”(“ww”),則 DateDiff 函數返回日歷表中兩個日期之間的星期數。函數計算 date1 和 date2之間星期日的數目。如果 date2 是星期日,DateDiff 將計算 date2,但即使 date1 是星期日,也不會計算 date1。

如果 date1 晚于 date2,則 DateDiff 函數返回負數。

firstdayofweek 參數會對使用“w”和“ww”間隔符號的計算產生影響。

如果 date1 或 date2 是日期文字,則指定的年度會成為日期的固定部分。但是如果 date1 或 date2 被包括在引號 (" ") 中并且省略年份,則在代碼中每次計算 date1 或 date2 表達式時,將插入當前年份。這樣就可以編寫適用于不同年份的程序代碼。

在 interval 為“年”(“yyyy”)時,比較 12 月 31 日和來年的 1 月 1 日,雖然實際上只相差一天,DateDiff 返回 1 表示相差一個年份。

MySQL 中 DATEDIFF(date1,date2) 返回起始時間 date1 和結束時間 date2 之間的天數。date1 和 date2 為日期或 date-and-time 表達式。計算時只用到這些值的日期部分。

【實例】使用 DATEDIFF() 函數計算兩個日期之間的間隔天數,輸入的 SQL 語句和執(zhí)行結果如下所示。

mysql> SELECT DATEDIFF('2017-11-30','2017-11-29') AS COL1,
  -> DATEDIFF('2017-11-30','2017-12-15') AS col2;
+------+------+
| COL1 | col2 |
+------+------+
|  1 | -15 |
+------+------+
1 row in set (0.00 sec)

由運行結果可知,DATEDIFF() 函數返回 date1-date2 后的值,因此 DATEDIFF('2017-11-30','2017-11-29') 的返回值為 1,DATEDIFF('2017-11-30 23:59:59','2017-12-15') 的返回值為 -15。

到此這篇關于MySQL DATEDIFF函數獲取兩個日期的時間間隔的方法的文章就介紹到這了,更多相關MySQL DATEDIFF日期時間間隔內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • MySQL DATE_ADD和ADDDATE函數實現向日期添加指定時間間隔
  • 一篇文章搞定Mysql日期時間函數
  • MySQL日期函數與時間函數匯總(MySQL 5.X)
  • MySQL獲得當前日期時間函數示例詳解
  • MySQL日期與時間函數的使用匯總
  • mysql 實現添加時間自動添加更新時間自動更新操作

標簽:沈陽 黔東 鹽城 珠海 移動 沈陽 徐州 拉薩

巨人網絡通訊聲明:本文標題《MySQL DATEDIFF函數獲取兩個日期的時間間隔的方法》,本文關鍵詞  MySQL,DATEDIFF,函數,獲取,兩個,;如發(fā)現本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《MySQL DATEDIFF函數獲取兩個日期的時間間隔的方法》相關的同類信息!
  • 本頁收集關于MySQL DATEDIFF函數獲取兩個日期的時間間隔的方法的相關信息資訊供網民參考!
  • 推薦文章