sql >> Databasteknik >  >> RDS >> PostgreSQL

PostgreSQL-funktion som returnerar flera resultatuppsättningar

Ett enklare sätt har funnits sedan PostgreSQL 8.3 :

CREATE FUNCTION test()
  RETURNS SETOF first_table AS
$func$
BEGIN

RETURN QUERY
SELECT * FROM first_table;

RETURN QUERY
SELECT * FROM second_table;   -- has to return same rowtype as first_table!

END
$func$ LANGUAGE plpgsql;

Ring:

SELECT * FROM test();

Båda resultatuppsättningarna läggs till en enda uppsättning som returneras från funktionen.
Se manualen för RETURN QUERY .



  1. SINH() Funktion i Oracle

  2. MySQL Ändra samling av alla tabeller

  3. Hur kör man en SQL-fråga direkt i C#?

  4. Felsökning:För många omdirigeringar