Sql Postgres将两个字段合并为一个具有未知类型值的字段
我使用SquirrelSQL客户机处理Postgres,问题是同一个查询返回不同的结果 如果以下查询按原样执行,则其工作正常:Sql Postgres将两个字段合并为一个具有未知类型值的字段,sql,postgresql,postgresql-9.3,squirrel-sql,Sql,Postgresql,Postgresql 9.3,Squirrel Sql,我使用SquirrelSQL客户机处理Postgres,问题是同一个查询返回不同的结果 如果以下查询按原样执行,则其工作正常: select foo.column1 as Field1, 1 as Field2 from (values (3343),(45323)) as Foo 但是如果查询是从存储函数执行的,比如: CREATE OR REPLACE FUNCTION getSomeData(text) RETURNS setof tmp_stub_type AS $body$ DECL
select foo.column1 as Field1, 1 as Field2 from (values (3343),(45323)) as Foo
但是如果查询是从存储函数执行的,比如:
CREATE OR REPLACE FUNCTION getSomeData(text) RETURNS setof tmp_stub_type AS
$body$
DECLARE
r tmp_stub_type%rowtype;
BEGIN
FOR r IN
select foo.column1 as Field1, 1 as Field2 from (values (3343),(45323)) as Foo
LOOP
RETURN NEXT r;
END LOOP;
RETURN;
END;
$body$
LANGUAGE 'plpgsql';
它返回相同的行数,但带有未知类型值,只有一个字段,而不是两个字段
tmp_stub_type是包含两个整数字段的普通表,仅此而已
我试图通过Postgres pgAdmin解决这个问题,但他给我看了相同的东西,除了值之外——它们是正确的,但放在一个字段中,用逗号分隔
我需要运行存储函数内的查询,请帮助处理它,并为我的英语抱歉
我正在使用:Postgres 9.3,Squirrel 3.5.3,OS Windows要从返回行类型或具有多个输出参数的函数中获取多列,请使用例如
从getSomeData(…)中选择*而不是选择getSomeData(…)
资料来源:它的作品。我真的很感谢你的帮助!非常感谢。