MYSQL中日期與字串間的相互轉換
阿新 • • 發佈:2019-01-31
一、字串轉日期
下面將講述如何在MySQL中把一個字串轉換成日期:
背景:rq欄位資訊為:20100901
1、無需轉換的:
SELECT * FROM tairlist_day WHERE rq>'2010-07-31' AND rq<'2010-09-01'
2、使用:DATE_FORMAT
SELECT * FROM tairlist_day WHERE DATE_FORMAT( rq, '%Y-%m-%d')>'2010-08-01' AND DATE_FORMAT( rq, '%Y-%m-%d')<'2010-08-03'
其中第1要在一個“寬鬆”的語法是被允許的:以任何標點符號作為日期部分和時間部分中的定界符,如:
一個 YYYYMMDD 或 YYMMDD 格式的數字,只要數字看起來像是一個日期。例如,19830905 和 830905 被解釋成為 '1983-09-05 '。
建議使用第2種
二、日期轉字串
mysql> select date_format(now(),'%Y'); +-------------------------+ | date_format(now(),'%Y') | +-------------------------+ | 2009 | +-------------------------+ 1 row in set (0.00 sec) 擴充套件: %Y:年 %c:月 %d:日 %H:小時 %i:分鐘 %s:秒 mysql> select date_format(now(),'%Y-%c-%d %h:%i:%s'); +----------------------------------------+ | date_format(now(),'%Y-%c-%d %h:%i:%s') | +----------------------------------------+ | 2009-8-07 06:59:40 | +----------------------------------------+ 1 row in set (0.00 sec)