我正在尝试查询 MySQL 数据库并返回给定日期范围内的所有记录,并且内容列中还包含子字符串“bank”。
我引用的“时间”字段的格式是mm/dd/yyyy hh:mm:ss
。
这是我提出的声明,但 MySQL Workbench 给我带来了问题:
SELECT *
FROM blogs
WHERE ((‘time’ BETWEEN “04/01/2011 00:00:00” AND “04/15/2011 23:59:59”)
AND (‘content’ LIKE ‘%bank%’))
最佳答案
试试这个怎么样:
SELECT *
FROM blogs
WHERE `time` BETWEEN '2011-04-01 00:00:00' AND '2011-04-15 23:59:59'
AND `content` LIKE '%bank%';
如果您的时间
字段实际上是时间戳,则此方法有效。如果 time
不是时间戳,那么您将不得不使用类似于 McAdam331 的答案,但我希望您的数据库对此类数据使用正确的类型您要求它存储。
在值周围使用单'或双"引号,并在字段名称周围打勾`。我还将日期格式更改为 yyyy-mm-dd hh:mm:ss 和删除了一些不必要的括号。
http://sqlfiddle.com/#!9/730bd/1/0
如果您在发布此类问题时发布表格的结构,将会很有帮助,这样我们就可以确保给出正确的答案。
关于mysql - 查询日期范围内也具有指定子字符串的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30081666/