在MySQL中,日期的格式可以是多種多樣的,比如“年-月-日 時(shí):分:秒”、“年/月/日”、“日-月-年”等等。不過有時(shí)候,用戶只需要日期中的年、月、日部分,而不需要時(shí)間,這時(shí)候就可以使用“DATE”類型的字段來存儲(chǔ)。
CREATE TABLE `user` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(50) NOT NULL, `birthday` date NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4;
上述代碼創(chuàng)建了一個(gè)名為“user”的表,其中包含三個(gè)字段:id、name、birthday。其中birthday字段的類型為“DATE”,只包含了年、月、日的信息,不包含時(shí)間。
在MySQL中,要對(duì)“DATE”類型的字段進(jìn)行篩選時(shí),可以使用“YEAR()”、“MONTH()”和“DAY()”等函數(shù)提取年、月、日信息。例如:
-- 查詢生日在某一年的用戶 SELECT * FROM `user` WHERE YEAR(`birthday`) = 1990; -- 查詢生日在某個(gè)月的用戶 SELECT * FROM `user` WHERE MONTH(`birthday`) = 10; -- 查詢生日在某一天的用戶 SELECT * FROM `user` WHERE DAY(`birthday`) = 1;
除此之外,如果需要在程序中將“DATE”類型的日期轉(zhuǎn)化為指定格式的字符串,也可以使用MySQL提供的“DATE_FORMAT()”函數(shù)。例如:
-- 將日期轉(zhuǎn)化為“年-月-日”格式的字符串 SELECT DATE_FORMAT(`birthday`, '%Y-%m-%d') FROM `user`;
以上就是MySQL中日期只包含年月日的相關(guān)內(nèi)容,希望能對(duì)各位讀者有所幫助。