Select 每小时之间的数据
Select data between hour by hour basis
我正在使用postgresql,我的想法是select 24 小时之前创建的数据,我使用以下方法检索这些数据
SELECT * FROM table
WHERE created < now() - '24 hours'::interval
在此我尝试添加一个条件,使用 BETWEEN 子句在小时基础之间获取数据,为此我的查询如下
SELECT * FROM table
WHERE created < now() - '24 hours'::interval
AND created BETWEEN {condition} AND {condition}
我的 created 列在带有时区的时间戳中,当我尝试使用
extract(hour from created)
在这种情况下,我没有得到任何结果。我不知道我哪里做错了。还有其他方法可以实现吗?
如有任何帮助,我们将不胜感激。
如果您想检查过去 24 小时以外发生的每小时范围,请使用如下内容:
SELECT *
FROM yourTable
WHERE created < now() - '24 hours'::interval AND
EXTRACT(hour from created) >= 10 AND EXTRACT(hour from created) < 11;
这将查找过去 24 小时以外的所有记录,这些记录的时间在上午 10 点到 11 点之间。
我正在使用postgresql,我的想法是select 24 小时之前创建的数据,我使用以下方法检索这些数据
SELECT * FROM table
WHERE created < now() - '24 hours'::interval
在此我尝试添加一个条件,使用 BETWEEN 子句在小时基础之间获取数据,为此我的查询如下
SELECT * FROM table
WHERE created < now() - '24 hours'::interval
AND created BETWEEN {condition} AND {condition}
我的 created 列在带有时区的时间戳中,当我尝试使用
extract(hour from created)
在这种情况下,我没有得到任何结果。我不知道我哪里做错了。还有其他方法可以实现吗?
如有任何帮助,我们将不胜感激。
如果您想检查过去 24 小时以外发生的每小时范围,请使用如下内容:
SELECT *
FROM yourTable
WHERE created < now() - '24 hours'::interval AND
EXTRACT(hour from created) >= 10 AND EXTRACT(hour from created) < 11;
这将查找过去 24 小时以外的所有记录,这些记录的时间在上午 10 点到 11 点之间。