Gaetano Mendola
2004-05-06 23:37:29 UTC
Hi all,
I have a table with ~ 3e+6 rows on it.
I do select on this table in this way:
(1) select * from user_logs where login_time::date = now()::date;
consider that login_time is a TIMESTAMPTZ with an index on it.
If I use the select in this way:
select * from user_logs where login_time = now();
the the index is used.
I'm trying to use define and index in order to help the query (1):
test# create index idx on user_logs ( (login_time::date) );
ERROR: functions in index expression must be marked IMMUTABLE
why that cast is not considered IMMUTABLE ?
How can I define an index for the query (1) ?
Regards
Gaetano Mendola
I have a table with ~ 3e+6 rows on it.
I do select on this table in this way:
(1) select * from user_logs where login_time::date = now()::date;
consider that login_time is a TIMESTAMPTZ with an index on it.
If I use the select in this way:
select * from user_logs where login_time = now();
the the index is used.
I'm trying to use define and index in order to help the query (1):
test# create index idx on user_logs ( (login_time::date) );
ERROR: functions in index expression must be marked IMMUTABLE
why that cast is not considered IMMUTABLE ?
How can I define an index for the query (1) ?
Regards
Gaetano Mendola