我正在试验PostgreSQL中的函数,我让它工作正常,但有些令人困惑。我有这个功能的标题:
CREATE OR REPLACE FUNCTION p.GetEvents(date)
RETURNS TABLE (when date, participant varchar, helper varchar)
AS $$
BEGIN
(....)
我认为这会返回一张桌子(因此RETURN TABLE
!)这样的东西:
when | participant | helper
--------+-------------------+-----------
| |
但是返回结果看起来像一个数组,例如:
(2015-03-21, participant, helper)
(2015-04-10, participant, helper)
RETURNS TABLE
不是构建表作为输出的正确方法吗?如何强制输出是表而不是逗号分隔值?
答案 0 :(得分:1)
使用
select * from getevent(current_date);
,因为
select getevent(current_date);
返回带有一列假型记录的行。