PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Przekazywanie zestawu wyników do funkcji Postgresql

Możesz użyć kursora , ale to bardzo niepraktyczne przy obliczaniu minimum.

Używałbym tabeli tymczasowej w tym celu i przekaż nazwę tabeli do użycia w dynamicznym SQL :

CREATE OR REPLACE FUNCTION f_min_id(_tbl regclass, OUT min_id int) AS 
$func$
BEGIN

EXECUTE 'SELECT min(id) FROM ' || _tbl
INTO min_id;

END  
$func$ LANGUAGE plpgsql;

Zadzwoń:

CREATE TEMP TABLE foo ON COMMIT DROP AS
SELECT id, name
FROM   users
LIMIT  50;

SELECT f_min_id('foo');

Główne punkty

-> Demo SQLfiddle



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Izolacja transakcji w PostgreSQL

  2. Dekoduj odpowiednik w postgresie

  3. Jak zmapować kolumnę znacznika czasu na typ JPA?

  4. postgresql - zamień wszystkie wystąpienia ciągu w polu tekstowym

  5. postgresql:uruchom polecenia SQL za pomocą psql w wierszu poleceń