我有一列,数据类型为 varchar,使用 MySQL 数据库。假设此列中保存的 Web 表单中的值为 : 2/4/2013
我的搜索查询如下所示:
SELECT * FROM tbl WHERE colValue LIKE %2/4/2013%
但是,它正在崩溃。对于任何其他字符串,我得到正确的结果。但是,是正斜杠使它崩溃吗?如何解决这个问题?
问候!
既然你想选择特定的日期,为什么不使用=
SELECT * FROM tbl WHERE colValue = '2/4/2013'
但是,如果列的数据类型是 DATE
或 DATETIME
,尽管 MySQL 会自动转换它,但请使用正确的格式,
SELECT * FROM tbl WHERE colValue = '2013-02-04'
对于使用类似的运算符,您可以使用 DATEPART() 函数...
select * from tbl
where (DATEPART(yy, colValue) = 2013
AND DATEPART(mm, colValue) = 04
AND DATEPART(dd, colValue) = 02)
像这样,你可以像在SQL中一样做
对/使用转义字符。mysql 转义字符是 \。