P粉4364105862023-09-03 09:07:18
如果您知道所有大于某个值的两位数年份,比如'50'
,应被视为1900年代的年份,而其余的应被视为2000年代的年份,您可以使用CASE
表达式来应用不同的日期格式:
SELECT DATE(STR_TO_DATE( date, CASE WHEN RIGHT(date, 2) < ? THEN '%d-%M-%Y' ELSE '%d-%M-%y' END )) date FROM tablename;
将?
更改为适合您数据的两位数年份(如'50'
)。
请参见演示。