我正在寻找一个where子句,可用于检索过去24小时的记录?
当前回答
SELECT *
FROM table_name
WHERE table_name.the_date > DATE_SUB(CURDATE(), INTERVAL 1 DAY)
其他回答
select ...
from ...
where YourDateColumn >= getdate()-1
在MySQL中:
SELECT *
FROM mytable
WHERE record_date >= NOW() - INTERVAL 1 DAY
在SQL Server中:
SELECT *
FROM mytable
WHERE record_date >= DATEADD(day, -1, GETDATE())
在Oracle中:
SELECT *
FROM mytable
WHERE record_date >= SYSDATE - 1
在PostgreSQL:
SELECT *
FROM mytable
WHERE record_date >= NOW() - '1 day'::INTERVAL
红移:
SELECT *
FROM mytable
WHERE record_date >= GETDATE() - '1 day'::INTERVAL
SQLite:
SELECT *
FROM mytable
WHERE record_date >= datetime('now','-1 day')
在MS Access中:
SELECT *
FROM mytable
WHERE record_date >= (Now - 1)
你好,我现在从原来的帖子过去了很多时间,但我有一个类似的问题,我想分享。
我得到了一个datetime字段,格式为YYYY-MM-DD hh:mm:ss,我想访问一整天,所以这是我的解决方案。
函数DATE(),在MySQL:提取日期或日期时间表达式的日期部分。
SELECT * FROM `your_table` WHERE DATE(`your_datatime_field`)='2017-10-09'
这一天我得到了所有的行寄存器。
我希望它能帮助到任何人。
SELECT *
FROM table_name
WHERE table_name.the_date > DATE_SUB(CURDATE(), INTERVAL 1 DAY)
MySQL:
SELECT *
FROM table_name
WHERE table_name.the_date > DATE_SUB(NOW(), INTERVAL 24 HOUR)
时间间隔可以是年、月、日、小时、分、秒
比如,在最后十分钟
SELECT *
FROM table_name
WHERE table_name.the_date > DATE_SUB(NOW(), INTERVAL 10 MINUTE)
推荐文章
- 选项(RECOMPILE)总是更快;为什么?
- 设置数据库从单用户模式到多用户
- oracle中的RANK()和DENSE_RANK()函数有什么区别?
- 的类型不能用作索引中的键列
- 如何在PowerShell格式化日期时间
- SQL逻辑运算符优先级:And和Or
- 如何检查一个表是否存在于给定的模式中
- 添加一个复合主键
- 在c#中解析字符串为日期时间
- 如何在SQL Server Management Studio中查看查询历史
- 可以为公共表表达式创建嵌套WITH子句吗?
- 什么时候我需要在Oracle SQL中使用分号vs斜杠?
- SQL Server的NOW()?
- 在SQL中,count(列)和count(*)之间的区别是什么?
- 在SQL Server中截断(不是四舍五入)小数位