select timediff('23:40:00', ' 18:30:00'); -- 兩時間相減
select substring( timediff('23:40:00', ' 18:30:00'),1,5) ----「05:10」相減返回小時:分鐘
select datediff('2008-08-08', '2008-08-01'); -- 7 -----兩日期相減
select to_days('2008-09-08')-to_days('2008-08-08') --31 -----兩日期相減
select substring( '2009-06-17 10:00:00', 1, 10 ) --2009-06-17 ----從datetime中提取「日期」
(*********************
時間戳是從2023年1月1日開始到目標時間所經過的秒數.
可以進行兩個datetime時間間隔的運算
******************************)
mysql計算兩個日期時間的差函式:
mysql計算兩個日期時間的差函式:
第一種:timestampdiff函式,需要傳入三個引數,第乙個是比較的型別,可以比較frac_second、second、 minute、 hour、 day、 week、 month、 quarter或 year幾種型別,第二個和第三個引數是待比較的兩個時間,比較是後乙個時間減前乙個時間,具體用法如下:
select timestampdiff(day,'2012-10-01','2013-01-13');// 返回的 是後乙個減去前乙個的剩餘天數
返回結果是104,這裡比較的是兩個時間的天數差;
第二種方法: datediff函式,就傳入兩個日期函式,比較的day天數,第乙個引數減去第二個引數的天數值,具體用法如下:
select datediff('2013-01-13','2012-10-01');//結果104
另外其它的日期函式,
now()函式返回的是當前時間的年月日時分秒,如:2008-12-29 16:25:46
curdate()函式返回的是年月日資訊: 如:2008-12-29
curtime()函式返回的是當前時間的時分秒資訊,如:16:25:46
另外,如果我們想對乙個包含年月日時分秒日期格式化成年月日日期,可以使用date(time)函式,如
date(now()) 返回的是 2008-12-29
datediff()兩個日期相減函式
、mysql中兩個datetime欄位相減
假定表名為tblname,兩個datetime欄位名分別為begindatetime,enddatetime,以下是相關兩個mysql日期字段相減的sql語句,這種方式兩欄位跨天,月,年都無問題。
得到兩個日期字段之間的秒數
select (unix_timestamp(enddatetime) - unix_timestamp(begindatetime)) dif_second from tblname
得到兩個日期字段之間的分數
select (unix_timestamp(enddatetime) - unix_timestamp(begindatetime))/60 dif_minute from tblname
得到兩個日期字段之間的天數
select (unix_timestamp(enddatetime) - unix_timestamp(begindatetime))/(60*60*24) dif_minute from tblname
二、mysql中兩個time欄位相減
如果兩個欄位都為time型別,如果兩個時間都在同一天,相減可以得到相差的秒數,但如果跨天,月,年都有問題。
select (time_to_sec(enddatetime) - time_to_sec(begindatetime)) dif_second from tblname
**原作者 c mysql對時間加減 C實現時間加減,比較
1.相關資料結構 time t 首先看time.件中隊time t的定義 ifndef time t defined typedef long time t 時間值 define time t defined 避免重複定義 time t endif 可以看出time t實際上是乙個整數,它記錄了儲存...
mysql對時間函式的處理
字首的月份的日期 1st,2nd,3rd,等等。y 年,數字,4 位 y 年,數字,2 位 a 縮寫的星期名字 sun sat d 月份中的天數,數字 00 31 e 月份中的天數,數字 0 31 m 月,數字 01 12 c 月,數字 1 12 b 縮寫的月份名字 jan dec j 一年中的天數...
mysql中sql對時間的計算
很多時候需要對sql中的時間進行相關的計算來達到自己的目的 例如 我要查詢新使用者的登陸次數。則就需要查詢登陸時間比註冊時間小於30天之類的登陸次數 regtime 30day logintime 1.select from sys user where timestamp regtime,30 0...