Det er en rimelig funktion . Karakteren af en dynamisk forespørgsel er, at den ændrer sin struktur fra opkald til opkald.
Hvis du vil kalde den samme forespørgsel gentagne gange (valgfrit med forskellige parametre), skal du bruge forberedte sætninger :
Eller brug almindelig (ikke-dynamisk) SQL-kode i plpgsql-funktioner, disse behandles også som forberedte sætninger.
I dit tilfælde , er det måske bedst at PREPARE
forespørgsler dynamisk. Vi havde en meget lignende sag her:
Det er også ekstremt ualmindeligt, at en forespørgsel bruger 1,4 sek på planlægning og kun 0,1 sek på udførelse. Kan være værd at kigge nærmere på. Der kan være måder at optimere på. Gerne med join_collapse_limit
:
- Eksempelforespørgsel for at vise Cardinality-estimeringsfejl i PostgreSQL
- A:Langsom fuldtekstsøgning på grund af vildt unøjagtige rækkeestimater
Relateret: