Questa è una caratteristica ragionevole . La natura di una query dinamica è che cambia la sua struttura da una chiamata all'altra.
Se desideri chiamare la stessa query ripetutamente (facoltativamente con parametri diversi), utilizza istruzioni preparate :
Oppure usa un codice SQL semplice (non dinamico) all'interno delle funzioni plpgsql, anche quelle vengono trattate come istruzioni preparate.
Nel tuo caso , potrebbe essere meglio PREPARE
interroga in modo dinamico. Abbiamo avuto un caso molto simile qui:
Inoltre, è estremamente raro che una query impieghi 1,4 secondi per la pianificazione e solo 0,1 secondi per l'esecuzione. Potrebbe valere la pena esaminarlo. Potrebbero esserci modi per ottimizzare. Come con join_collapse_limit
:
- Esempio di query per mostrare l'errore di stima della cardinalità in PostgreSQL
- R:Ricerca nel testo completo lenta a causa di stime delle righe estremamente imprecise
Correlati: