> I just discover a big not only big huge difference between NOW() and > CURRENT_DATE. > > Did you already know about it and do you know why ? > > DELETE FROM blacklist where bl_date < (NOW() - interval '2 DAY'); > on 6 000 000 of records > 699 ms > > DELETE FROM blacklist where bl_date < (CURRENT_DATE - interval '2 DAY'); > on 6 000 000 of records Is this a one-off run after each other (e.g. with a ROLLBACK in between)? If so I suspect the difference is due to caching and if you re-run the NOW() version it would also be fast. Also, NOW() is equivalent to CURRENT_TIMESTAMP() rather than CURRENT_DATE(). Perhaps the date vs. timestamp has some implication of how they query is planned. -- / Peter Schuller PGP userID: 0xE9758B7D or 'Peter Schuller <peter.schuller@xxxxxxxxxxxx>' Key retrieval: Send an E-Mail to getpgpkey@xxxxxxxxx E-Mail: peter.schuller@xxxxxxxxxxxx Web: http://www.scode.org
Attachment:
pgpt700GrN2iK.pgp
Description: PGP signature