La funzione Postgres assegna i risultati della query a più variabili


28

Devo assegnare valori a 2 variabili come sotto nella funzione Postgres.

a := select col1 from tbl where ...
b := select col2 from tbl where ...

Come posso assegnare 2 valori a 2 variabili in un comando di una riga?

Piace

a,b := select col1,col2 from tbl where ...

Risposte:


44

Come detto in "40.5.3. Esecuzione di una query con un risultato a riga singola" (sottolineatura mia):

Il risultato di un comando SQL che produce una singola riga (possibilmente di più colonne) può essere assegnato a una variabile record, a una variabile di tipo riga o a un elenco di variabili scalari . Questo viene fatto scrivendo il comando SQL di base e aggiungendo una clausola INTO.

Quindi questo dovrebbe funzionare:

SELECT col1, col2 INTO a, b FROM tbl WHERE...;
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.