尝试以不同列的表格形式显示结果,但将所有结果都显示在一列中。
- 我的功能
create or replace function test1()
returns table ( "Fname" varchar(20),"Lname" varchar(20),"A-B" bigint,"C-D" bigint,
"E-F" bigint ) as
$body$
begin
return query
SELECT tb."Fname",tb."Lname",count(tb."City"='A-B' OR NULL) AS "A-B",
count(tb."City"='C-D' OR NULL) AS "C-D",
count(tb."City"='E-F' OR NULL) AS "E-F"
FROM "Table1" tb
WHERE tb."City" in ('A-B','C-D','E-F')
GROUP BY 1,2
ORDER BY 1,2;
end
$body$
language plpgsql;
答案 0 :(得分:1)
代替
select test1()
DO
select * from test1()
答案 1 :(得分:1)
你不需要plgpsql。这只是一个简单的查询。
但是假设你只想测试它:你如何调用函数?
对于表格返回功能,您可以:select * from f1();
。
对于返回一个值的函数,执行select f1();
。