我有一个“birthDate”列,它返回[星期几]、[月][日]、[年]的字符串值 (例如,2013 年 12 月 30 日星期一)
我正在使用SELECT STR_TO_DATE(birthDate, '%m/%d/%Y')
,但它返回空值。
有什么想法吗?
解决方案
SELECT STR_TO_DATE(birthDate, '%W, %M %d, %Y')
最佳答案
您显示的日期格式是一种格式([星期几]、[月][日]、[年]),但在 STR_TO_DATE
中使用另一种格式([月]/[日] ]/[年])。您需要向 STR_TO_DATE
提供您的列当前采用的格式:
SELECT STR_TO_DATE(birthDate, '%W %m %d %Y')
如果您希望结果采用新格式,则可以使用DATE_FORMAT()
:
SELECT DATE_FORMAT(STR_TO_DATE(birthDate, '%W %m %d %Y'), '%m/%d/%Y')
关于mysql - 在 MySQL 中将字符串转换为日期(特殊格式),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20832745/