我有一个MySQL数据库,它有一个LASTUPDATE
列作为VARCHAR。
此字段的格式为:YYYY-MM-DD HH:mm:ss
我需要设置一个SELECT查询来查找某个日期之后的所有行,因此我试图以这种方式使用CONVERT
函数
SELECT * from POWER WHERE CONVERT(DATETIME, LASTUPDATE) > 'CONVERT(DATETIME, '2016-12-29 17:24:22')'
但我发现了错误
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'LASTUPDATE) > 'CONVERT(DATETIME, '2016-12-29 17:32:52')'' at line 1
我还尝试使用:
SELECT * from POWER WHERE CONVERT(DATETIME, LASTUPDATE) > '2016-12-29 17:32:52'
但我也有同样的错误 最佳答案
你可以用str_to_日期
SELECT *
from POWER
WHERE str_to_date(LASTUPDATE, '%Y-%m-%d %H:%i:%s' ) >
str_to_date('2016-12-29 17:24:22', '%Y-%m-%d %H:%i:%s' )
关于mysql - 带VARCHAR日期的SQL Where子句,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41399562/