当前位置: 首页 > 面试题库 >

MySQL-在两个日期之间从数据库中选择数据

薛欣荣
2023-03-14
问题内容

我已将用户注册的日期保存为日期时间,例如 2011-12-06 10:45:36 。我已运行此查询,并且希望此项目 -2011-12-06
10: 45 : 36- 将被选择:

SELECT `users`.* FROM `users` WHERE created_at >= '2011-12-01' AND
created_at <= '2011-12-06'

但是不是。存在任何优雅的方式,该如何选择?我最初的想法是2011-12-06 + 1,但是看起来不太好。


问题答案:

您的问题是日期的简短版本使用午夜作为默认设置。因此,您的查询实际上是:

SELECT users.* FROM users 
WHERE created_at >= '2011-12-01 00:00:00' 
AND created_at <= '2011-12-06 00:00:00'

这就是为什么您看不到10:45的记录的原因。

更改为:

SELECT users.* FROM users 
WHERE created_at >= '2011-12-01' 
AND created_at <= '2011-12-07'

您还可以使用:

SELECT users.* from users 
WHERE created_at >= '2011-12-01' 
AND created_at <= date_add('2011-12-01', INTERVAL 7 DAY)

它将以您要查找的相同时间间隔选择所有用户。

您可能还会发现BETWEEN运算符更具可读性:

SELECT users.* from users 
WHERE created_at BETWEEN('2011-12-01', date_add('2011-12-01', INTERVAL 7 DAY));


 类似资料:
  • 问题内容: 我正在使用数据库存储日志,其中“日期”列保存了插入日期。日期的格式为“ MM / DD / YY”。请任何人建议我如何在两个特定日期之间选择数据。例如,我尝试了这个: 但是我想这行不通,因为日期不是数字。谢谢您的帮助!:) 问题答案: 使用关键字:

  • 我有数据帧,其中有一列包含事件日期(日期不是唯一的)。我需要选择此时间段内的所有数据。我接下来尝试: 列< code>Transaction_date的类型是< code>datetime64[ns]。当我运行< code>01/01/2020到< code>31/01/2020期间的请求代码时,指定期间的部分数据丢失(信息仅显示21天,应该是31天)。 我看到数据帧包含整个请求周期的数据。你能帮

  • 问题内容: 我们正在多家商店中运行带有MySql后端的Java PoS(销售点)应用程序。我想保持商店中的数据库与主机服务器上的数据库同步。 商店中发生某些更改时,应在主机服务器上对其进行更新。我该如何实现? 问题答案: 复制不是很难创建。 这里有一些很好的教程: http://aciddrop.com/2008/01/10/step-by-step-how-to-setup-mysql-data

  • 问题内容: 如何在MySQL中的日期范围之间选择数据。我的专栏是24小时的祖鲁时间格式。 尽管在这些时间段之间有数据,但不返回任何内容。我是否必须强制 “发件人” 和 “发件人” 字段中的值键入查询? 问题答案: 您需要更新日期格式:

  • 问题内容: 我检索两个日期之间的数据,当我选择带有月份的日期时,它如何获得正确的结果,以及如何输出空列表视图,但是当我选择一个月以上的日期时,下面的输出空列表视图是我的代码 在这里我在DB类中声明变量 创建表语句 输入数据方法 在这里我访问ExEntry方法 在这里,我面临着这两个日期变量之间的问题 我像下面这样访问 问题答案: 有两种主要解决方案。所有解决方案的共同点是,必须以某种方式对包含日期

  • 如何向MaterialDatePicker添加约束以强制用户选择仅介于两个日期之间的日期?