尝试将varchar字段与用户输入进行比较时出错。问题是输入是日期,db中的字段是varchar。我相信我必须将db字段(和用户输入?)转换为datetime才能比较它,但我可能做错了:(
失败的sql(WHERE子句的一部分):
AND
CONVERT(datetime, bdo_report_item_field.content_text, 1) >= CONVERT(datetime, '01/10/2011', 1)
错误:#1064 - 您的SQL语法出错;查看与您的MySQL服务器版本对应的手册,以便在第25行“bdo_report_item_field.content_text,1)> = CONVERT(datetime,'/ 01/10/2011',1))'附近使用正确的语法
如果有人可以提供帮助,真的很高兴!
答案 0 :(得分:2)
我认为CONVERT不是你需要的功能。我认为您需要查看 str_to_date 。
答案 1 :(得分:2)
CONVERT()不接受三个参数:
...既不允许指定日期格式。它更适合使用STR_TO_DATE():
此外,GUI小部件的数据类型与MySQL级别无关,因为SQL查询始终是字符串。