使用 SQL 提取最近 7 天的数据
本指南演示如何使用 SQL 查询检索过去一周的数据,并将该周定义为从星期日开始。 假设您有一个包含“日期”列和其他相关数据的表。目标是选择过去 7 天内的条目。
示例表:
考虑一个包含以下示例数据的表格:
id | date |
---|---|
2 | 2011-05-14 09:17:25 |
5 | 2011-05-16 09:17:25 |
6 | 2011-05-17 09:17:25 |
8 | 2011-05-20 09:17:25 |
15 | 2011-05-22 09:17:25 |
目标是提取 id
值 5、6 和 8,代表前一周的数据。
SQL 查询:
以下 MySQL 查询可实现此目的:
<code class="language-sql">SELECT id FROM tbname WHERE date BETWEEN DATE_SUB(NOW(), INTERVAL 7 DAY) AND NOW();</code>
说明:
此查询使用 BETWEEN
运算符来过滤“日期”属于特定时间范围内的记录。 DATE_SUB(NOW(), INTERVAL 7 DAY)
计算当前时刻 (NOW()
) 前 7 天的日期和时间。然后,BETWEEN
子句选择此计算日期与当前日期和时间之间的条目。
结果:
查询返回以下内容:
id |
---|
5 |
6 |
8 |
这些id
值准确反映了过去一周的数据条目。 请注意,此查询考虑的是最近 7 天,而不考虑星期几。 对于更复杂的周定义(例如,从星期日开始),可能需要更复杂的日期操作,可能涉及 DAYOFWEEK()
函数或类似函数。
以上是如何使用 SQL 查询检索过去一周的数据?的详细内容。更多信息请关注PHP中文网其他相关文章!