我有一个使用 MySQL 数据库的数据类型为 varchar 的列。假设保存在此列中的 Web 表单的值为:2/4/2013
我的搜索查询如下:
SELECT * FROM tbl WHERE colValue LIKE %2/4/2013%
但是,它正在崩溃。对于任何其他字符串,我都会得到正确的结果。但是,是正斜杠导致它崩溃吗?如何解决这个问题?
问候 !
既然你想选择特定的日期,为什么不使用=
SELECT * FROM tbl WHERE colValue = '2/4/2013'
但是如果列的数据类型是DATE
or 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 转义字符是\。