本篇文章主要介紹mysql中列類型日期時間型的相關知識點,希望對需要的朋友有幫助!
推薦參考教學:《mysql教學》
所謂的列類型,其實就是指數據類型,即對資料進行統一的分類,從系統的角度出發是為了能夠使用統一的方式進行管理,更好的利用有限的空間。
在 SQL 中,將資料型別分成了三大類,分別為:數值型、字串型和日期時間型。
日期時間型數據,顧名思義,就是用來表示日期和時間的資料類型,共有五種類型,分別為:
datetime
:日期時間,其格式為yyyy-MM-dd HH:mm:ss
,表示的範圍是從MySQL 教學之列類型中的日期時間型000 年到9999 年,有零值,即0000-00-00 0000:00
;
date
:日期,就是datetime
的date
部分;
#time
:時間,或是時間段,為指定的某個時間區間之間,包含正負時間;
timestamp
:時間戳,但不是真正意義上的時間戳,其是從MySQL 教學之列類型中的日期時間型970
年開始計算的,格式和datetime
一致;
#year
:年份,共有兩種格式,分別為year(2)
和year(4)
.
#執行下列SQL 語句建立日期時間表,進行測試:
-- 创建日期时间表create table my_date( dMySQL 教學之列類型中的日期時間型 datetime, d2 date, dMySQL 教學之列類型中的日期時間型 time, d4 timestamp, dMySQL 教學之列類型中的日期時間型 year)charset utf8;
當咱們插入資料時,日期時間型中的time
,可以為負數,甚至可以是很大的負數;year
,可以使用2 位元資料插入,也可以使用4 位元資料插入;timestamp
,只要目前所在的記錄被更新,該欄位就會自動更新為目前時間,且時間戳類型預設為非空的。
-- 插入测试数据insert into my_date values (&#MySQL 教學之列類型中的日期時間型9;20MySQL 教學之列類型中的日期時間型7-0MySQL 教學之列類型中的日期時間型-06 MySQL 教學之列類型中的日期時間型MySQL 教學之列類型中的日期時間型:MySQL 教學之列類型中的日期時間型MySQL 教學之列類型中的日期時間型:00&#MySQL 教學之列類型中的日期時間型9;,&#MySQL 教學之列類型中的日期時間型9;20MySQL 教學之列類型中的日期時間型7-0MySQL 教學之列類型中的日期時間型-06&#MySQL 教學之列類型中的日期時間型9;,&#MySQL 教學之列類型中的日期時間型9;MySQL 教學之列類型中的日期時間型MySQL 教學之列類型中的日期時間型:MySQL 教學之列類型中的日期時間型MySQL 教學之列類型中的日期時間型:00&#MySQL 教學之列類型中的日期時間型9;,&#MySQL 教學之列類型中的日期時間型9;20MySQL 教學之列類型中的日期時間型7-0MySQL 教學之列類型中的日期時間型-06 MySQL 教學之列類型中的日期時間型MySQL 教學之列類型中的日期時間型:MySQL 教學之列類型中的日期時間型MySQL 教學之列類型中的日期時間型:00&#MySQL 教學之列類型中的日期時間型9;,20MySQL 教學之列類型中的日期時間型7);insert into my_date values (&#MySQL 教學之列類型中的日期時間型9;20MySQL 教學之列類型中的日期時間型7-0MySQL 教學之列類型中的日期時間型-06 MySQL 教學之列類型中的日期時間型MySQL 教學之列類型中的日期時間型:MySQL 教學之列類型中的日期時間型MySQL 教學之列類型中的日期時間型:00&#MySQL 教學之列類型中的日期時間型9;,&#MySQL 教學之列類型中的日期時間型9;20MySQL 教學之列類型中的日期時間型7-0MySQL 教學之列類型中的日期時間型-06&#MySQL 教學之列類型中的日期時間型9;,&#MySQL 教學之列類型中的日期時間型9;-MySQL 教學之列類型中的日期時間型MySQL 教學之列類型中的日期時間型MySQL 教學之列類型中的日期時間型:MySQL 教學之列類型中的日期時間型MySQL 教學之列類型中的日期時間型:00&#MySQL 教學之列類型中的日期時間型9;,&#MySQL 教學之列類型中的日期時間型9;20MySQL 教學之列類型中的日期時間型7-0MySQL 教學之列類型中的日期時間型-06 MySQL 教學之列類型中的日期時間型MySQL 教學之列類型中的日期時間型:MySQL 教學之列類型中的日期時間型MySQL 教學之列類型中的日期時間型:00&#MySQL 教學之列類型中的日期時間型9;,69);insert into my_date values (&#MySQL 教學之列類型中的日期時間型9;20MySQL 教學之列類型中的日期時間型7-0MySQL 教學之列類型中的日期時間型-06 MySQL 教學之列類型中的日期時間型MySQL 教學之列類型中的日期時間型:MySQL 教學之列類型中的日期時間型MySQL 教學之列類型中的日期時間型:00&#MySQL 教學之列類型中的日期時間型9;,&#MySQL 教學之列類型中的日期時間型9;20MySQL 教學之列類型中的日期時間型7-0MySQL 教學之列類型中的日期時間型-06&#MySQL 教學之列類型中的日期時間型9;,&#MySQL 教學之列類型中的日期時間型9;-2 MySQL 教學之列類型中的日期時間型MySQL 教學之列類型中的日期時間型:MySQL 教學之列類型中的日期時間型MySQL 教學之列類型中的日期時間型:00&#MySQL 教學之列類型中的日期時間型9;,&#MySQL 教學之列類型中的日期時間型9;20MySQL 教學之列類型中的日期時間型7-0MySQL 教學之列類型中的日期時間型-06 MySQL 教學之列類型中的日期時間型MySQL 教學之列類型中的日期時間型:MySQL 教學之列類型中的日期時間型MySQL 教學之列類型中的日期時間型:00&#MySQL 教學之列類型中的日期時間型9;,70);
如上圖所示,以上MySQL 教學之列類型中的日期時間型 筆記錄已插入成功,接下來,咱們再來驗證更新記錄時,時間戳類型的欄位d4
是否會自動更新:
-- 更新记录,验证时间戳类型的字段是否会自动更新update my_date set dMySQL 教學之列類型中的日期時間型 = &#MySQL 教學之列類型中的日期時間型9;20MySQL 教學之列類型中的日期時間型7-0MySQL 教學之列類型中的日期時間型-06 MySQL 教學之列類型中的日期時間型MySQL 教學之列類型中的日期時間型:24:00&#MySQL 教學之列類型中的日期時間型9; where dMySQL 教學之列類型中的日期時間型 = MySQL 教學之列類型中的日期時間型970;
如上圖所示,顯然咱們的結論全部都得到了驗證。
以上是MySQL 教學之列類型中的日期時間型的詳細內容。更多資訊請關注PHP中文網其他相關文章!