Dat is een redelijke functie . De aard van een dynamische vraag is dat het de structuur van aanroep tot aanroep verandert.
Als u dezelfde query herhaaldelijk wilt oproepen (optioneel met verschillende parameters), gebruikt u prepared statements :
Of gebruik gewone (niet-dynamische) SQL-code in plpgsql-functies, die worden ook behandeld als voorbereide instructies.
In jouw geval , is het misschien het beste om PREPARE
dynamisch opvragen. We hadden hier een vergelijkbare zaak:
Het is ook extreem ongewoon dat een query 1,4 sec besteedt aan planning en slechts 0,1 sec aan uitvoering. Misschien het onderzoeken waard. Er kunnen manieren zijn om te optimaliseren. Zoals met join_collapse_limit
:
- Voorbeeldquery om de schattingsfout van de kardinaliteit in PostgreSQL weer te geven
- A:langzaam zoeken in volledige tekst vanwege enorm onnauwkeurige rijschattingen
Gerelateerd: