首页 > 数据库 > mysql教程 > 如何高效检索MySQL最近30天的记录?

如何高效检索MySQL最近30天的记录?

DDD
发布: 2024-12-16 15:09:11
原创
627 人浏览过

How to Efficiently Retrieve MySQL Records from the Last 30 Days?

在 MySQL 中检索 30 天范围内的记录

用户在尝试检索添加到 MySQL 数据库的记录时经常会遇到困难特定的日期范围,特别是在使用日期格式时。本文通过提供全面的解决方案来检索今天到过去 30 天内的记录,确保正确的日期格式以供显示,从而解决了这一挑战。

问题中提供的原始查询遇到了无法限制的问题选择最近 30 天并检索所有记录。要纠正此问题,至关重要的是在 SELECT 子句中应用 DATE_FORMAT 函数,而不是在 WHERE 子句中。更正后的查询如下:

SELECT DATE_FORMAT(create_date, '%m/%d/%Y')
FROM mytable
WHERE create_date BETWEEN CURDATE() - INTERVAL 30 DAY AND CURDATE()
登录后复制

需要注意的是,CURDATE() 仅检索日期部分,不包括时间。如果您的 create_date 列将数据存储为具有非零时间分量的 DATETIME,则此查询可能不会返回今天的记录。

要解决此问题,请考虑使用 NOW() 代替:

SELECT DATE_FORMAT(create_date, '%m/%d/%Y')
FROM mytable
WHERE create_date BETWEEN NOW() - INTERVAL 30 DAY AND NOW()
登录后复制

此修改可确保查询返回最近 30 天内添加的记录,包括当天添加的任意时间部分的记录。

以上是如何高效检索MySQL最近30天的记录?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板