MySQL:一个简单的正则表达式无法按预期工作

时间:2019-05-31 22:43:40

标签: mysql regex

在MySQL表的字段中,我必须识别内容何时为dd/mm/yyyy形式,以便以适当的SQL形式(如yyyy-mm-dd)重新格式化它。

它没有用,所以我尝试以这种简单形式进行测试:

SELECT "23/01/2002" REGEXP "^\\d{2}/\\d{2}/\\d{4}$"

返回以下内容:

"23/01/2002" REGEXP "^\\d{2}/\\d{2}/\\d{4}$" -> 0

我可能缺少明显的东西...

1 个答案:

答案 0 :(得分:1)

使用STR_TO_DATE(而不是使用正则表达式),并使用格式字符串作为日期。就您而言:

SELECT STR_TO_DATE(col, "%d/%m/%Y") FROM table

如果不解析,它将为NULL