天天看點

MySql計算兩個日期時間的差函數

第一種:TIMESTAMPDIFF函數,需要傳入三個參數,第一個是比較的類型,可以比較FRAC_SECOND、SECOND、 MINUTE、 HOUR、 DAY、 WEEK、 MONTH、 QUARTER或 YEAR幾種類型,第二個和第三個參數是待比較的兩個時間,比較是後一個時間減前一個時間,具體用法如下:

?

1

SELECT

TIMESTAMPDIFF(

DAY

,

'2012-10-01'

,

'2013-01-13'

);

傳回結果是104,這裡比較的是兩個時間的天數差;

?

1

SELECT

TIMESTAMPDIFF(

MONTH

,

'2012-10-01'

,

'2013-01-13'

);

這裡比較的是兩個時間的月份,傳回的結果是3;

第二種方法: DATEDIFF函數,就傳入兩個日期函數,比較的DAY天數,第一個參數減去第二個參數的天數值,具體用法如下:

?

1

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

繼續閱讀