PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

La requête Postgres est très lente avec current_date ::date au lieu de la date codée en dur

Tout d'abord, postez EXPLAIN ANALYZE sur les deux variantes afin que nous puissions voir. Première étape pour comprendre pourquoi l'un est plus lent que l'autre. Il peut également être utile de voir l'intégralité de la requête.

La première variante doit être optimisable.

Pour ne pas que votre utilisateur modifie votre requête à plusieurs endroits, envisagez d'écrire un procédure stockée , ou si/quand votre première variante est optimisée, une vue .

Edit :remarqué que votre current__date - '...'::interval renverrait un horodatage sans fuseau horaire. Je suppose que vous voulez diffuser à ce jour à la place :(current_date - '2 weeks'::interval)::date