在MySQL數(shù)據(jù)庫(kù)中,有時(shí)我們只需要存儲(chǔ)日期的年和月,而不需要包含日,這時(shí)我們可以使用DATE_FORMAT函數(shù)將具體日期轉(zhuǎn)換為年和月。
SELECT DATE_FORMAT('2021-05-20', '%Y-%m');
上面的查詢(xún)語(yǔ)句將返回2021-05,即具體日期的年和月。
在表中存儲(chǔ)日期時(shí),我們可以使用DATE類(lèi)型來(lái)存儲(chǔ)具體日期,然后使用DATE_FORMAT函數(shù)在查詢(xún)時(shí)轉(zhuǎn)換為年和月。
CREATE TABLE example ( id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, date DATE NOT NULL ); INSERT INTO example (date) VALUES ('2021-05-20'); SELECT id, DATE_FORMAT(date, '%Y-%m') AS year_month FROM example;
上面創(chuàng)建了一個(gè)名為example的表,包含兩個(gè)字段,id和date。id為自增主鍵,date為DATE類(lèi)型的日期字段。插入一條具體日期為2021-05-20的數(shù)據(jù),然后查詢(xún)時(shí)使用DATE_FORMAT函數(shù)將具體日期轉(zhuǎn)換為年和月,并將轉(zhuǎn)換后的值作為year_month字段返回。
這樣我們就可以只存儲(chǔ)年和月,而不需要存儲(chǔ)日了。