MYSQL的time, datetime, timestamp


MYSQL的time, datetime, timestamp都是時間類型的資料型態,但是有些微的差異:

當你需要日期加上時間,則使用datetime~
範圍由'1000-01-01 00:00:00'到'9999-12-31 23:59:59'

當你只需要時間,則使用time~
範圍由'00:00:00'到'23:59:59'

當你只需要日期,則使用date~
範圍由'1000-01-01'到'9999-12-31'

timestamp則是日期戳章,例如你可以透過SELECT CURRENT_TIMESTAMP(); 看到現在目前的日期戳章。timestamp經常用來當作自動插入的欄位,例如你可以宣告

myautotimestamp TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP

那麼這個myautotimestamp不需要給資料,就會自動把目前的日期戳章插入。

但是在timestampe中,還分成兩種format,一種如'1365647419'這樣,另一種如'2013-04-11 10:30:19'。

SELECT UNIX_TIMESTAMP('2013-04-11 10:30:19'); //得到1365647419

SELECT FROM_UNIXTIME( '1365647419' ); //得到2013-04-11 10:30:19

其他的data type如 ~ date, year,則是日期跟年份的格式,如 '2013-04-11'、'2013'。

張貼留言

0 留言