Sql 如何使用函数返回两列

Sql 如何使用函数返回两列,sql,postgresql,set-returning-functions,Sql,Postgresql,Set Returning Functions,我想用我的SQL函数返回2个值: CREATE OR REPLACE FUNCTION get_avg_prices(...) RETURNS table(avg_sale_price decimal, avg_rent_price decimal) AS $$ SELECT building_prices.avg_sale_price, building_prices.avg_rent_price FROM ... $$ LANGUAGE sql; 它工作,但

我想用我的SQL函数返回2个值:

CREATE OR REPLACE FUNCTION get_avg_prices(...)
  RETURNS table(avg_sale_price decimal, avg_rent_price decimal) 
AS
$$

SELECT 
  building_prices.avg_sale_price, 
  building_prices.avg_rent_price
FROM 
  ...

$$
  LANGUAGE sql;
它工作,但返回单列中的值:

如何在两个单独的列中返回值?

表格函数(定义为
返回表格
返回集合
的函数)需要像表格一样在
from
子句中使用

因此,您需要使用:

select * 
from get_avg_prices(...);
只有标量函数(仅返回单个值的函数,例如数字)才应放入
选择
列表。

表格函数(定义为
返回表格
返回集合
的函数)需要像表格一样在
from
子句中使用

因此,您需要使用:

select * 
from get_avg_prices(...);
只有标量函数(仅返回单个值的函数,例如数字)才应放入
选择
列表。

表格函数(定义为
返回表格
返回集合
的函数)需要像表格一样在
from
子句中使用

因此,您需要使用:

select * 
from get_avg_prices(...);
只有标量函数(仅返回单个值的函数,例如数字)才应放入
选择
列表。

表格函数(定义为
返回表格
返回集合
的函数)需要像表格一样在
from
子句中使用

因此,您需要使用:

select * 
from get_avg_prices(...);
只能将标量函数(仅返回单个值的函数,例如数字)放入
select
列表中