sql >> Base de Datos >  >> RDS >> PostgreSQL

Función de consulta dinámica de Postgres

No puede usar una variable en lugar de un identificador como ese. Tienes que hacerlo con consultas dinámicas. Se verá algo como esto:

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

Si está usando PostgreSQL 9.1 o superior, puede usar la función format() que facilita mucho la construcción de esta cadena.