【发布时间】:2020-10-16 00:37:43
【问题描述】:
我有一个简单的 PostgreSQL 函数,我认为应该将值返回到单独的列 -115 和 101000005458E6258...,但它返回一个列,其中两个值用逗号分隔 -115,101000005458E6258...。我的功能有什么问题?
CREATE OR REPLACE FUNCTION public.get_direction()
RETURNS TABLE(direction integer, geom geometry)
AS $$
BEGIN
RETURN QUERY SELECT
heading-lag(heading) over (order by time) AS direction, a.geom AS geom
FROM public.mytable a
WHERE reg='125123'
GROUP BY heading, a.geom , a.time;
END; $$
LANGUAGE 'plpgsql';
我调用函数
SELECT public.get_direction();
谢谢。
【问题讨论】:
-
你应该这样称呼它:
select * from get_direction();. -
它是一个表函数,所以它应该像SQL语句中的表一样使用。
-
初学者错误。感谢您的帮助
标签: sql postgresql select sql-function set-returning-functions