sql >> Databasteknik >  >> RDS >> PostgreSQL

dynamisk fråga postgres

Det finns EXECUTE uttalande av plpgsql , som skulle göra det du försöker göra - exekvera en SQL-frågesträng. Du taggade dynamisk, så det här kan vara vad du letar efter.

Fungerar bara i plpgsql-funktioner eller DO uttalanden (anonyma kodblock). Skillnaden mellan EXECUTE och SQL-EXECUTE klart i den fina manualen:

Obs! PL/pgSQL EXECUTE satsen är inte relaterad till EXECUTE SQL-statement som stöds av PostgreSQL-servern. Serverns EXECUTE sats kan inte användas direkt i PL/pgSQL-funktioner (och behövs inte).

Om du vill returnera värden från en dynamisk SELECT fråga som ditt exempel indikerar måste du skapa en funktion. DO uttalanden returnerar alltid void . Mer om att returnera värden från en funktion i den mycket fina manualen.



  1. Hur man hittar en databas ANSI_NULLS-inställning i SQL Server (T-SQL)

  2. Hur man returnerar ASCII-kodvärdet för en given karaktär i SQL Server

  3. Den flerdelade identifieraren kunde inte bindas

  4. EXP() Funktion i Oracle