0
我有我這樣創建了一個功能:如何更改此函數中返回值的格式?
create or replace function core.nrt_summary_by_param_id(int) returns table (reason_type_id int, reason_id int, descr varchar(256), num int, pct numeric, cause_rank int) as $$
begin
return query
with r3 as (
//A bunch of queries
)
select
r3.reason_type_id,
r3.reason_id,
r3.desc,
r3.num,
r3.pct,
r3.cause_rank
from r3;
where
r3.param_id = $1
return;
end
$$ language plpgsql;
當我調用該函數像這樣:
select nrt_summary_by_param_id(5);
的結果是這樣的:
nrt_summary_by_param_id
(1,2001,「A」,14,19.72,1)
(1,2006, 「B」,9,12.68,2)
(1,2202, 「C」,8,11.27,3)
(1,2002, 「d」 ,8,11.27,3)
(1,2302, 「E」,7,9.86,5)
(1,2201, 「F」,4,5.63,6)
( 1,2206,「G」,4,5.63,6)
(1,2301,「H」,2,2.82,8)
(1,2303, 「I」,2,2.82,8)
(1,2005, 「J」,2,2.82,8)
(1,2004, 「K」 ,2,2.82,8)
(1,2204, 「L」,2,2.82,8)
(,, 「M」,7,9.87,11)
(13行)
我如何從具有多個列的表中返回我的函數?我如何讓每個單獨的列顯示出來?我希望返回結果是,如果函數內部的整個查詢通過命令行正常執行。謝謝!
@DiZou:如果你沒有得到微妙的暗示:開始'SELECT * FROM nrt_summary_by_param_id(5);' – 2013-03-21 15:59:30
啊好了,這工作的感謝! – 2013-03-21 16:00:34