Не пойму логики в простейшем случае.
Есть таблица
CREATE TABLE log
(
ip inet NOT NULL,
regdt timestamp NOT NULL DEFAULT now()
)
CREATE INDEX ix_log_ip
ON log
USING btree
(ip, regdt);
Делаю explain запроса
select count(*) from log
where ip='127.0.0.1' and regdt>cast (now() as timestamp);
Использует индекс ix_log_ip
но стоит изменить так
select count(*) from log
where ip='127.0.0.1'
and regdt>cast (now()-interval '1 day' as timestamp);
как получаю sec scan
тоже самое если использовать cast('20080101' as timestamp).
Как побороть?