我正在寻找一个where子句,可用于检索过去24小时的记录?
当前回答
SELECT *
FROM tableName
WHERE datecolumn >= dateadd(hour,-24,getdate())
其他回答
在Oracle中(过去24小时):
SELECT *
FROM my_table
WHERE date_column >= SYSDATE - 24/24
如果,出于任何原因,你有未来日期的行,你可以使用between,像这样:
SELECT *
FROM my_table
WHERE date_column BETWEEN (SYSDATE - 24/24) AND SYSDATE
在SQL Server中(过去24小时):
SELECT *
FROM mytable
WHERE order_date > DateAdd(DAY, -1, GETDATE()) and order_date<=GETDATE()
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)
在postgres中,假设你的字段类型是时间戳:
Select * from date_field > (now() - interval '24小时');
在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)
推荐文章
- 在SQL Server 2008 R2中重命名数据库时出错
- 将数据复制到另一个表中
- 如何在SQL中选择表的最后一条记录?
- SQL在Oracle中连接多行列值的查询
- 单元测试:日期时间。现在
- 在单个查询中计算空值和非空值
- 在存储过程中使用“SET XACT_ABORT ON”有什么好处?
- SQL to LINQ工具
- 如何从一个查询插入多行使用雄辩/流利
- 如何连接列在Postgres选择?
- SQL Developer只返回日期,而不是时间。我怎么解决这个问题?
- 在mongodb中存储日期/时间的最佳方法
- 有人可以对SQL查询进行版权保护吗?
- 如何知道MySQL表最近一次更新?
- 如何转储一些SQLite3表的数据?