mysql - 不返回所有结果之间的 SQL

标签 mysql between

我有这个简单的 Mysql 查询

select *
from reportings
where findcampaign = 1 and
      is_click = 1 and
      created_at BETWEEN date(2016-11-01) AND date(2016-12-31)

这应该返回 findcampaign = 1 且 is_click is = 1 的所有行,其中created_at 日期在 2016 年 11 月 1 日到 2016 年 12 月 31 日之间。

正在运行select * from reportings where findcampaign = 1 and is_click = 1

给我 12 行

enter image description here

图像显示这些报告均在这些日期之间,因此我应该获得 12 行。即使我的created_at有时间戳值,这是从数据库获取日期和日期之间的正确方法吗?或者我需要在日期中附加时间吗?

最佳答案

你应该为日期加上引号

select *
from reportings
where findcampaign = 1 and
      is_click = 1 and
      created_at BETWEEN date('2016-11-01') AND date('2016-12-31')

关于mysql - 不返回所有结果之间的 SQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40973972/

相关文章:

php - "bad"可以通过 img src 发生吗?

背景 : and background-image: 之间的 css 差异

MySQL BETWEEN 两个日期时间不使用索引

mysql - 通过phpMyAdmin为mysql添加一个函数

mysql - 将历史数据存储在单独的事实表中

php/mysql事务

sql - Oracle SQL 查询列出两个日期之间的周数

Mysql SELECT unicode 字符

text - 如何在android中的开关按钮及其文本之间放置空格?

mysql - 如何查找两个可变日期之间的重复项