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

Funzione di interrogazione dinamica di Postgres

Non puoi usare una variabile al posto di un identificatore del genere. Devi farlo con query dinamiche. Sarà simile a questo:

EXECUTE 'SELECT * FROM ' || quote_ident(tname) 
        || ' WHERE ' || quote_ident(cname) || ' NOT IN (''AK'',''CK'');'
INTO result_var;

Se stai usando PostgreSQL 9.1 o versioni successive, puoi usare la funzione format() che rende molto più semplice la costruzione di questa stringa.