在MySQL中,有時(shí)候需要將文本數(shù)據(jù)轉(zhuǎn)換成日期格式,比如從數(shù)據(jù)庫中取出的時(shí)間是字符串類型,但是需要進(jìn)行時(shí)間計(jì)算和比較,就需要將它轉(zhuǎn)換為日期類型。
MySQL提供了幾種函數(shù)來將文本轉(zhuǎn)換成日期:
STR_TO_DATE(string, format)
這個(gè)函數(shù)可以將一個(gè)文本字符串轉(zhuǎn)換成日期類型。其中,string是需要轉(zhuǎn)換的文本字符串,format是指定字符串的格式。例如:
SELECT STR_TO_DATE('2021-04-10', '%Y-%m-%d');
這個(gè)語句將返回2021年4月10日的日期。
DATE_FORMAT(date, format)
這個(gè)函數(shù)則是用來將日期類型格式化成指定格式的文本字符串。其中,date為日期類型,format為指定格式的字符串。例如:
SELECT DATE_FORMAT(NOW(), '%Y年%m月%d日 %H時(shí)%i分%s秒');
這個(gè)語句將返回當(dāng)前時(shí)間的格式化字符串。
在使用這些函數(shù)的時(shí)候,需要注意兩點(diǎn):
- 字符串格式需要與指定格式相符
- 如果字符串包含非法字符或格式不正確,函數(shù)將返回NULL值