Mysql 日期Date和字符串String的互相轉換(DATE_FORMAT & STR_TO_DATE)


1.Date ——> String

使用的函數:DATE_FORMAT(date,format) date:需要轉換的日期 format:格式化的樣式
format樣式:

: %Y 顯示四位 : 2015 %y 只顯示后兩位 :15

: %M 月份的英文顯示:October %m 月份的阿拉伯顯示:01-12 %b 月份的英文縮略顯示:Oct %c 月份的阿拉伯顯示:1-12

: %d 阿拉伯顯示:00-31 %D 帶有英文后綴:1st-31th %e 阿拉伯顯示:1-31 %j 年的天:001-366

: %H :00-23 %h:01-12 %I:01-12 %k:0-23 %l:1-12

: %i:00-59

: %S:00-59 %s:00-59

微妙:%f

AM/PM:%p

12小時制時間: %r: 02:02:44 PM

24小時制時間: %T: 14:02:44

周: %W:周的英文顯示 %w 周的阿拉伯顯示 :0(星期日)-6(星期六) %a 周的英文縮略顯示:Mon-

 

例子:

DATE_FORMAT(now(),"%Y-%m-%d %T") 20120-09-018 14:10:32

DATE_FORMAT(now(),"%Y-%m-%d %H:%i:%s %p") 2020-09-18 14:10:32 PM

 

2.String ——>Date

使用的函數:STR_TO_DATE(str,format) str:字符形式的日期 format:格式化樣式

STR_TO_DATE('1992-04-12',"%Y-%m-%d") // 輸出:1992-04-12(日期形式)

MySQL 5.6 date 與 string 的轉換和比較

表中有一個字段 dpt_date ,SQL 類型為 date,表示離開日期。
我們將 dpt_date 與字符串 ‘2016-03-09’ 進行比較,發現效率低於 dpt_date 轉換為字符串再與 ‘2016-03-09’ 進行比較:
SELECT * FROM tbl_name WHERE dpt_date = '2016-03-09' 效率低於 SELECT * FROM tbl_name WHERE FORMAT_DATE(dpt_date, '%Y-%m-%d')='2016-03-09'。


免責聲明!

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



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