Как создать функцию выбрать все столбцы в postgresql - PullRequest
0 голосов
/ 15 октября 2018

Как создать функцию (хранимая процедура / хранимая функция), которая выбирает все столбцы в таблице в PgAdmin?То же самое, как это.

CREATE OR REPLACE FUNCTION GetAllUsers(IN userno integer)
  RETURNS TABLE(all column) AS
$BODY$
BEGIN 

    RETURN QUERY    
        SELECT  *
        FROM Users W 
        WHERE w.UserNo = GetAllUsers.userno;
END;
$BODY$
  LANGUAGE plpgsql VOLATILE
  COST 100
  ROWS 1000;
ALTER FUNCTION GetAllUsers(integer)
  OWNER TO postgres;

1 Ответ

0 голосов
/ 15 октября 2018

Вы можете использовать returns setof users вместо returns table (...)

Вам также не понадобится дорогая функция PL / pgSQL для этого.Достаточно простой функции SQL:

CREATE OR REPLACE FUNCTION getallusers(p_userno integer)
  RETURNS setof users
$BODY$
   SELECT *
   FROM users 
   WHERE userno = p_userno;
$BODY$
  LANGUAGE sql VOLATILE
  COST 100
  ROWS 1000;
...