PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Qual é a maneira mais fácil de retornar um conjunto de registros de um procedimento armazenado do PostgreSQL?


Há também a opção de usar RETURNS TABLE(...) (conforme descrito no Manual do PostgreSQL ), que eu pessoalmente prefiro:
CREATE OR REPLACE FUNCTION get_countries()
RETURNS TABLE(
    country_code text,
    country_name text
)
AS $$
    SELECT country_code, country_name FROM country_codes
$$ LANGUAGE sql;

Isso é efetivamente o mesmo que usar SETOF tablename , mas declara a estrutura da tabela inline em vez de referenciar um objeto existente, portanto, as junções e tal ainda funcionarão.