Postgres 函数,获取 "query has no destination for result data",不想使用 table 结果类型
Postgres function, getting "query has no destination for result data", don't want to use table result type
我正在编写一个简单的 postgres 函数。这个函数的结果应该是一行"events"table。我有以下内容:
create or replace function featured_event() returns setof events as
$$
begin
select events.* from events where featured is true;
end
$$ LANGUAGE plpgsql;
我不想对列进行硬编码,而是使用现有 table 中的结构作为 return 类型。
这 不是 Function with SQL query has no destination for result data 的副本,因为我不想使用 table
结果类型。
使用SQL函数:
create or replace function featured_event() returns setof events as
$$
select events.* from events where featured is true;
$$ LANGUAGE sql;
在 plpgsql 中你应该使用 return query
:
create or replace function featured_event_plpgsql() returns setof events as
$$
begin
return query select events.* from events where featured is true;
end;
$$ LANGUAGE plpgsql;
我正在编写一个简单的 postgres 函数。这个函数的结果应该是一行"events"table。我有以下内容:
create or replace function featured_event() returns setof events as
$$
begin
select events.* from events where featured is true;
end
$$ LANGUAGE plpgsql;
我不想对列进行硬编码,而是使用现有 table 中的结构作为 return 类型。
这 不是 Function with SQL query has no destination for result data 的副本,因为我不想使用 table
结果类型。
使用SQL函数:
create or replace function featured_event() returns setof events as
$$
select events.* from events where featured is true;
$$ LANGUAGE sql;
在 plpgsql 中你应该使用 return query
:
create or replace function featured_event_plpgsql() returns setof events as
$$
begin
return query select events.* from events where featured is true;
end;
$$ LANGUAGE plpgsql;