【MySQL】日期與字符串間的相互轉換


字符串轉日期

下面將講述如何在MySQL中把一個字符串轉換成日期:

背景:rq字段信息為:20100901

  1. 無需轉換的:

     SELECT * FROM tairlist_day WHERE rq>'2010-07-31' AND rq<'2010-09-01'
    
  1. 使用: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)

當然最方便的方法是使用客戶端Navicat, 直接更改字段類型,即可實現字符串與日期類型的轉換。

參考


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM