天天看點

PHP mysql資料庫中的YEAR()與CURDATE()函數

一開始很少用mysql中的YEAR()與CURDATE()函數,下面我就通過mysql參考手冊中的例子具體說說對它的了解,我在MYSQL中截了一張圖,如下:
PHP mysql資料庫中的YEAR()與CURDATE()函數

1:上圖中CURDATE()傳回目前日期的函數,這個好了解;

2:(YEAR(CURDATE())-YEAR(birth))這個也好了解,其中YEAR()函數傳回的是年份,例如有這樣一段查詢:mysql>SELECT YEAR(CURDATE()) FROM test;其中test是資料庫中的測試表;假如今天是2015-10-10的話,那麼上面的這段查詢傳回的就是2015年,它并不傳回幾月幾号;

3:那麼這段又是怎樣了解呢?看這段字元:-(RIGHT(CURDATE(),5) RIGHT(birth),5) AS age.其中RIGHT傳回的是字元串右邊的5位字元。如果把CURDATE()傳回的目前日期當作字元串的話,例如:2015-10-10.那麼RIGHT(CURDATE(),5)傳回的就是:10-10,注意其中的”-“符号也算作一位。如果(RIGHT(CURDATE(),5) RIGHT(birth),5)為真的話,那麼就傳回1,如果為假則傳回0;注意上面的圖紅色的B部分,看出生日期為1997-12-09,而目前日期為:2003-08-19,按理說1997到2003年應該是6年,為什麼age顯示的是5歲呢,原因就是因為上述傳回結果為真,故減去了一年。

“`

繼續閱讀