首頁技術(shù)文章正文

YEAR、DATE、TIME、DATETIME和TIMESTAMP詳細(xì)介紹[MySQL數(shù)據(jù)類型]

更新時(shí)間:2019-11-21 來源:黑馬程序員 瀏覽量:

為了方便在數(shù)據(jù)庫中存儲(chǔ)日期和時(shí)間,MySQL提供了表示日期和時(shí)間的數(shù)據(jù)類型,分別是YEAR、DATE、TIME、DATETIME和TIMESTAMP。下面列舉了這些MSL中日期和時(shí)間數(shù)據(jù)類型所對(duì)應(yīng)的字節(jié)數(shù)、取值范圍、日期格式以及零值。


1574323152631_MySQL日期和時(shí)間類型.jpg

從上圖中可以看出,每種日期和時(shí)間類型的取值范圍都是不同的。需要注意的是,如果插入的數(shù)值不合法,系統(tǒng)會(huì)自動(dòng)將對(duì)應(yīng)的零值插入數(shù)據(jù)庫中。

YEAR類型

YEAR類型用于表示年份,在MySQL中,可以使用以下三種格式指定YEAR類型的值。

(1)使用4位字符串或數(shù)字表示,范圍’1901’~’2155’或1901~2155。例如,輸入’2014’或2014,插入到數(shù)據(jù)庫中的值均為2014。

(2)使用兩位字符串表示,范圍為’00’~’99’,其中,’00’~’69’范圍的值會(huì)被轉(zhuǎn)換為2000~2069范圍的YEAR值,’70’~’99’范圍的值會(huì)被轉(zhuǎn)換為1970~1999范圍的YEAR值。例如,輸入14’,插入到數(shù)據(jù)庫中的值為2014。

(3)使用兩位數(shù)字表示,范圍為1~99其中,1~69范圍的值會(huì)被轉(zhuǎn)換為2001~2069范圍的YEAR值,70~99范圍的值會(huì)被轉(zhuǎn)換為1970~1999范圍的YEAR值。例如,輸入14,插入到數(shù)據(jù)庫中的值為2014。

需要注意的是,當(dāng)使用YEAR類型時(shí),一定要區(qū)分’0’和0。因?yàn)樽址袷降摹?’表示的YEAR值是2000,而數(shù)字格式的0表示的YEAR值是0000。

DATE類型

DATE類型用于表示日期值,不包含時(shí)間部分。在MySQL中,可以使用以下4種格式指定DATE類型的值。

(1) 以’YYYY-MM-DD’或者’YYYYMMDD’字符串格式表示。

例如,輸入’2014-01-21’或’20140121’,插入數(shù)據(jù)庫中的日期都為2014-01-21。

(2) 以’YY-MM-DD’或者’YYMMDD’字符串格式表示。YY表示的是年,范圍為’00’~’99’,其中’00’~’69’范圍的值會(huì)被轉(zhuǎn)換為2000~2069范圍的值,’70’~’99’范圍的值會(huì)被轉(zhuǎn)換為1970~1999范圍的值.

例如,輸入’14-01-21’或’140121’,插入數(shù)據(jù)庫中的日期都為2014-01-21

(3) 以YY-MM-DD或者YYMMDI數(shù)字格式表示。

例如,輸入14-01-21或140121,插入數(shù)據(jù)庫中的日期都為2014-01-21。

(4) 使用CURRENT_DATE或者NOW()表示前系統(tǒng)日期。

TIME類型

TIME類型用于表示時(shí)間值,它的顯示形式般為HH:MM:SS,其中,HH表示小時(shí),MM表示分,SS表示秒。在MySQL中,可以使用以下三種格式指定TIME類型的值。

1) 以'D HH:MM:SS’字符串格式表示。其中,D表示日,可以取0~34之間的值,插入數(shù)據(jù)時(shí),小時(shí)的值等于(D×24+HH)。

例如,輸入2 11:30:50,插入數(shù)據(jù)庫中的日期為59:30:50

(2)以'HHMMSS’字符串格式或者HHMMSS數(shù)字格式表示。例如,輸入’345454'或345454,插入數(shù)據(jù)庫中的日期為34:54:54。

(3)使用CURRENT_TIME或NOW()輸入當(dāng)前系統(tǒng)時(shí)間。

DATETIME類型

DATETIME類型用于表示日期和時(shí)間,它的顯示形式為’YYYY-MM-DD HH:MM:SS’,其中YYYY表示年,MM表示月,DD表示日,HH表示小時(shí),MM表示分,SS表示秒。在MySQL中,可以使用以下4種格式指定DATETIME類型的值。

(1) 以’YYYY-MM-DD HH:M:SS’或者’YYYYMMDDHHMMSS’字符串格式表示的日期和時(shí)間,取值范圍為’1000-01-01 00:00:00~’9999-12-3 23:59:59’。

例如,輸入’2014-01-22 09:01:23’或20140122090123,插入數(shù)據(jù)庫中的DATETIM值都為2014-01-22 09:01:23。

(2)以’YY-MM-DDH:MM:SS’或者’YYMMDDHHMMSS’字符串格式表示的日期和時(shí)間,其中YY表示年,取值范圍為’00’~’99’。與DATE類型中的YY相同,’00’~’69’范圍的值會(huì)被轉(zhuǎn)換為2000~2069范圍的值,’70’~’9’范圍的值會(huì)被轉(zhuǎn)換為1970~1999范圍的值。

(3)以YYYYMMDDHHMMSS或者YYMMDDHHMMSS數(shù)字格式表示的日期和時(shí)間例如,插入20140122090123或者140122090123,插入數(shù)據(jù)庫中的DATETIME值都為2014-01-22 09:01:23.

(4)使用NOW來輸入當(dāng)前的日期和時(shí)間。

猜你喜歡
MySQL安裝教程

分享到:
在線咨詢 我要報(bào)名
和我們在線交談!