mysql Date類型與String類型轉換


mysql Date類型與String類型轉換

https://blog.csdn.net/kangkangwanwan/article/details/78392724

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-

    eg:DATE_FORMAT(now(),"%Y-%m-%d %T")   2015-09-01 17:10:52

         DATE_FORMAT(now(),"%Y-%m-%d %H:%i:%s %p")     2015-09-01 17:10:52 PM

2.String ——>Date
     2.1使用的函數:STR_TO_DATE(str,format)       str:字符形式的日期       format:格式化樣式

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

    2.2直接用date(20170101)格式

  eg:start_time BETWEEN date(20170603) AND date(20170604)


3.mysql的日期類型

mysql(5.5)所支持的日期時間類型有:DATETIME、 TIMESTAMP、DATE、TIME、YEAR。

幾種類型比較如下:

日期時間類型 占用空間 日期格式 最小值 最大值 零值表示
 DATETIME  8 bytes  YYYY-MM-DD HH:MM:SS
 1000-01-01 00:00:00
9999-12-31 23:59:59 
0000-00-00 00:00:00
 TIMESTAMP  4 bytes  YYYY-MM-DD HH:MM:SS  19700101080001
2038 年的某個時刻
00000000000000
 DATE  4 bytes
 YYYY-MM-DD 1000-01-01 
9999-12-31 
0000-00-00
 TIME  3 bytes
 HH:MM:SS  -838:59:59 838:59:59 
00:00:00
 YEAR  1 bytes
 YYYY 1901 
2155 
0000
 

 

 

 

 

 

 DATETIME

     DATETIME 用於表示 年月日 時分秒,是 DATE 和 TIME 的組合,並且記錄的年份(見上表)比較長久。如果實際應用中有這樣的需求,就可以使用 DATETIME 類型。

 TIMESTAMP

TIMESTAMP 用於表示 年月日 時分秒,但是記錄的年份(見上表)比較短暫。
TIMESTAMP 和時區相關,更能反映當前時間。當插入日期時,會先轉換為本地時區后再存放;當查詢日期時,會將日期轉換為本地時區后再顯示。所以不同時區的人看到的同一時間是  不一樣的。
表中的第一個 TIMESTAMP 列自動設置為系統時間(CURRENT_TIMESTAMP)。當插入或更新一行,但沒有明確給 TIMESTAMP 列賦值,也會自動設置為當前系統時間。如果表中有第二個 TIMESTAMP 列,則默認值設置為0000-00-00 00:00:00。
TIMESTAMP 的屬性受 Mysql 版本和服務器 SQLMode 的影響較大。
     如果記錄的日期需要讓不同時區的人使用,最好使用 TIMESTAMP。

 DATE

    DATE 用於表示 年月日,如果實際應用值需要保存 年月日 就可以使用 DATE。

 TIME

    TIME 用於表示 時分秒,如果實際應用值需要保存 時分秒 就可以使用 TIME。

 YEAR

    YEAR 用於表示 年份,YEAR 有 2 位(最好使用4位)和 4 位格式的年。 默認是4位。如果實際應用只保存年份,那么用 1 bytes 保存 YEAR 類型完全可以。不但能夠節約存儲空間,還能提高表的操作效率。

 
————————————————
版權聲明:本文為CSDN博主「盛裝吾步」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/kangkangwanwan/article/details/78392724


免責聲明!

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



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