如何创建一个函数(存储过程/存储函数)来选择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;
答案 0 :(得分:2)
您可以使用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;