sql >> Database teknologi >  >> RDS >> PostgreSQL

dynamisk forespørgsel postgres

Der er EXECUTE erklæring om plpgsql , som ville gøre, hvad du prøver at gøre - udføre en SQL-forespørgselsstreng. Du taggede dynamisk, så det kan være det, du leder efter.

Virker kun inde i plpgsql-funktioner eller DO udsagn (anonyme kodeblokke). Forskellen mellem EXECUTE og SQL-EXECUTE gjort klart i den fine manual:

Bemærk: PL/pgSQL EXECUTE sætningen er ikke relateret til EXECUTE SQLstatement understøttet af PostgreSQL-serveren. Serverens EXECUTE sætning kan ikke bruges direkte i PL/pgSQL-funktioner (og er ikke nødvendig).

Hvis du ønsker at returnere værdier fra en dynamisk SELECT forespørgsel som dit eksempel indikerer, skal du oprette en funktion. DO sætninger returnerer altid void . Mere om at returnere værdier fra en funktion i den meget fine manual.



  1. Hvad bruger LISTAGG med ORDER BY NULL egentlig som bestillingskriterier?

  2. Hvordan undslipper jeg et enkelt citat i SQL Server?

  3. Sådan genereres scripts for at genskabe fremmednøglebegrænsninger i SQL Server-databasen - SQL Server / TSQL vejledning del 73

  4. mysql_fetch_assoc():det leverede argument er ikke en gyldig MySQL resultatressource i php