溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

MySQL日期類型

發(fā)布時間:2020-08-01 07:40:33 來源:網(wǎng)絡 閱讀:925 作者:拍黑磚業(yè)戶 欄目:MySQL數(shù)據(jù)庫

主要類型:YEAR、TIME、DATE、DATETIME、TIMESTAMP
(日期函數(shù):current_date(當前日期)、current_time(當前時間)、
now()(當前日期和時間,根據(jù)字段類型顯示日期或者時間))
MySQL日期類型
實驗timetest表結構
MySQL日期類型

DATETIME
DATETIME 用于表示年月日時分秒,是 DATE 和 TIME 的組合,并且記錄的年份(見上表)比較長久。DATETIME類型,包含日期和時間部分。可以使用引號字符串或數(shù)字兩種,年份可以是4 位,也可以是2位如果實際應用中有這樣的需求,就可以使用 DATETIME 類型。
MySQL日期類型
TIMESTAMP
TIMESTAMP 用于表示 年月日 時分秒,但是記錄的年份(見上表)比較短暫。
TIMESTAMP 和時區(qū)相關,更能反映當前時間。當插入日期時,會先轉換為本地時區(qū)后再存放;當查詢日期時,會將日期轉換為本地時區(qū)后再顯示。所以不同時區(qū)的人看到的同一時間是 不一樣的。
表中的第一個 TIMESTAMP 列自動設置為系統(tǒng)時間(CURRENT_TIMESTAMP)。當插入或更新一行,但沒有明確給 TIMESTAMP 列賦值,也會自動設置為當前系統(tǒng)時間。如果表中有第二個 TIMESTAMP 列,則默認值設置為0000-00-00 00:00:00。
TIMESTAMP 的屬性受 Mysql 版本和服務器 SQLMode 的影響較大。
如果記錄的日期需要讓不同時區(qū)的人使用,最好使用 TIMESTAMP。
TIMESTAMP類型和DATETIME類型的表示格式相同,存儲4個字節(jié)(比DATETIME少),取值范圍少于DATETIME類型。
TIMESTAMP和DATETIME最大不同于:TIMESTAMP根據(jù)時區(qū)顯示時間。
MySQL日期類型
上圖timstamp字段會隨著時區(qū)的變化而變換,但是datetime則不會變化。
DATE
DATE 用于表示 年月日,如果實際應用值需要保存 年月日 就可以使用 DATE。
DATE類型可以通過如下格式表示:
‘YYYY-MM-DD','YYYYMMDD',YYYYMMDD,'YY-MM-DD','YYMMDD',YYMMDD
其中當使用兩位表示年份時,分00~69和70~99兩種,參考YEAR類型。
MySQL日期類型
MySQL日期類型
TIME
TIME 用于表示 時分秒,如果實際應用值需要保存 時分秒 就可以使用 TIME。
TIME類型可以用多種格式表示,如:
‘D HH:MM:SS':D表示天數(shù),在插入表中時會折算成小時,即:D*24+HH:MM:SS。
'HHMMSS':省略冒號,但各個時間要有意義,比如‘128012’分鐘部分會被識別為‘12:80:12’,80分鐘是沒有意義的,插入會報錯。
'HH:MM':表示小時分鐘,如‘12:08’表示12小時8分鐘。
'SS':表示秒。
需要注意的是:如果輸入‘1208’,雖然我們想讓MySQL識別為12小時8分鐘,但在這種格式下,MySQL識別為‘00:12:08’
MySQL日期類型MySQL日期類型
MySQL日期類型

YEAR
YEAR 用于表示 年份,YEAR 有 2 位(最好使用4位)和 4 位格式的年。 默認是4位。如果實際應用只保存年份,那么用 1 bytes 保存 YEAR 類型完全可以。不但能夠節(jié)約存儲空間,還能提高表的操作效率。
1.以4位數(shù)字或字符串表示,兩者效果相同,表示范圍1901~2155,插入超出范圍的數(shù)據(jù)會報錯。
2.以2位字符串格式表示,范圍為‘00’~‘99’?!?0’~‘69’表示2000~2069,‘70’~‘99’表示1970~1999。‘0’和‘00’都會被識別為2000,超出范圍的數(shù)據(jù)也會被識別為2000。
3.以2位數(shù)字格式表示,范圍為1~99。1~69表示2001~2069,70~99表示1970~1999。但0值會被識別為0000,這和2位字符串被識別為2000有所不同。
insert into timetest(t_year) values(2018),('2018'),('00'),(00),(10),('10'),(77),('77'),('0'),(0);
MySQL日期類型

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經查實,將立刻刪除涉嫌侵權內容。

AI