主要型別:year、time、date、datetime、timestamp
(日期函式:current_date(當前日期)、current_time(當前時間)、
now()(當前日期和時間,根據字段型別顯示日期或者時間))
實驗timetest表結構
datetime 用於表示年月日時分秒,是 date 和 time 的組合,並且記錄的年份(見上表)比較長久。datetime型別,包含日期和時間部分。可以使用引號字串或數字兩種,年份可以是4 位,也可以是2位如果實際應用中有這樣的需求,就可以使用 datetime 型別。
timestamp 用於表示 年月日 時分秒,但是記錄的年份(見上表)比較短暫。
timestamp 和時區相關,更能反映當前時間。當插入日期時,會先轉換為本地時區後再存放;當查詢日期時,會將日期轉換為本地時區後再顯示。所以不同時區的人看到的同一時間是 不一樣的。
表中的第乙個 timestamp 列自動設定為系統時間(current_timestamp)。當插入或更新一行,但沒有明確給 timestamp 列賦值,也會自動設定為當前系統時間。如果表中有第二個 timestamp 列,則預設值設定為0000-00-00 00:00:00。
timestamp 的屬性受 mysql 版本和伺服器 sqlmode 的影響較大。
如果記錄的日期需要讓不同時區的人使用,最好使用 timestamp。
timestamp型別和datetime型別的表示格式相同,儲存4個位元組(比datetime少),取值範圍少於datetime型別。
timestamp和datetime最大不同於:timestamp根據時區顯示時間。
上圖timstamp欄位會隨著時區的變化而變換,但是datetime則不會變化。
date
date 用於表示 年月日,如果實際應用值需要儲存 年月日 就可以使用 date。
date型別可以通過如下格式表示:
『yyyy-mm-dd','yyyymmdd',yyyymmdd,'yy-mm-dd','yymmdd',yymmdd
其中當使用兩位表示年份時,分00~69和70~99兩種,參考year型別。
time 用於表示 時分秒,如果實際應用值需要儲存 時分秒 就可以使用 time。
time型別可以用多種格式表示,如:
『d hh:mm:ss':d表示天數,在插入表中時會折算成小時,即: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』
year 用於表示 年份,year 有 2 位(最好使用4位)和 4 位格式的年。 預設是4位。如果實際應用只儲存年份,那麼用 1 bytes 儲存 year 型別完全可以。不但能夠節約儲存空間,還能提高表的操作效率。
1.以4位數字或字串表示,兩者效果相同,表示範圍1901~2155,插入超出範圍的資料會報錯。
2.以2位字串格式表示,範圍為『00』~『99』。『00』~『69』表示2000~2069,『70』~『99』表示1970~1999。『0』和『00』都會被識別為2000,超出範圍的資料也會被識別為2000。
3.以2位數字格式表示,範圍為1~99。1~69表示2001~2069,70~99表示1970~1999。但0值會被識別為0000,這和2位字串被識別為2000有所不同。
mysql日期加減返回日 mysql日期加減
mysql日期加減 一 mysql 為日期增加乙個時間間隔 date add 1 示例 set dt now select date add dt,interval 1 day 加1天 select date add dt,interval 1 hour 加1小時 select date add d...
mysql8 0日期型別 MySQL的日期型別
mysql 中有多種資料型別可以用於日期和時間的表示,不同的版本可能有所差異,表 3 2 中 列出了 mysql 5.0 中所支援的日期和時間型別。表 3 2 mysql 中的日期和時間型別 日期和時間型別 位元組最小值 最大值date 1000 01 01 9999 12 31 datetime ...
mysql今天日期 MySQL獲取今天的日期
在本教程中,您將通過使用內建的日期函式來了解如何查詢獲取mysql今天的日期資料。使用內建日期函式獲取mysql今天的日期 有時,您可能希望從表中查詢資料,以獲取日期列為今天的日期,例如 select column list from table name where expired date to...