仅按日期部分的 Postgres 查询时间戳
Postgres query timestamp by datepart only
我正在使用它来尝试获取时间戳为今天的所有事件
SELECT systemuserid,ondate from auditlog
WHERE ondate::date = NOW()::date
性能似乎很差,超过 2 分钟。我在 ondate 上有一个索引。
有没有更有效的方法?
谢谢
使用范围条件:
select *
from auditlog
where ondate >= current_date
and ondate < current_date + 1;
current_date
将在午夜转换为时间戳,因此 ondate => current_date
将包括“今天”的所有内容。
并且条件 ondate < current_date + 1
将排除时间戳为明天(午夜)或更晚的行。
我正在使用它来尝试获取时间戳为今天的所有事件
SELECT systemuserid,ondate from auditlog
WHERE ondate::date = NOW()::date
性能似乎很差,超过 2 分钟。我在 ondate 上有一个索引。
有没有更有效的方法?
谢谢
使用范围条件:
select *
from auditlog
where ondate >= current_date
and ondate < current_date + 1;
current_date
将在午夜转换为时间戳,因此 ondate => current_date
将包括“今天”的所有内容。
并且条件 ondate < current_date + 1
将排除时间戳为明天(午夜)或更晚的行。