Jeff Davis wrote:
On Thu, 2006-08-17 at 20:50 +0300, gustavo halperin wrote:
I'm interesting in a partial index for a rows that aren't older than 6 mounts, something like the sentence below:
--------------------------------------------------------------------------------------------------------------------------------------------------
/CREATE INDEX name_for_the_index ON table (the_column_of_type_date) WHERE ( the_column_of_type_date > (current_date - interval '6 month')::date );/
--------------------------------------------------------------------------------------------------------------------------------------------------
But this is not posible, I receive the next error:
--------------------------------------------------------------------------------------------------------------------------------------------------
   ERROR:  functions in index predicate must be marked IMMUTABLE
--------------------------------------------------------------------------------------------------------------------------------------------------
So, what is the best solution for my problem?

Create an index on the table, and then periodically move records into a
separate archive table.

Regards,
        Jeff Dave
Thanks, but I have a question. If the table is a BIIIIIIG table, use your solution is still a good idea ?? What about to create a partial INDEX for the really current date (and not using the function current_date) and periodically dropped and created it with the current day again and again ??

 Thank you again,
        Gustavo

---------------------------(end of broadcast)---------------------------
TIP 5: don't forget to increase your free space map settings

Reply via email to