存储过程/函数的新手。我搜索了谷歌,Stackoverflow和Youtube,并且发现了各种各样令人费解的例子,有些不是英文的。存储函数postgresql返回表
我想了解一个存储函数的基本语法来返回Postgresql中的表。在MySql中,这是基本的,但我似乎无法围绕Postgresql的语法进行打包。我有我需要返回所需行(表)的SQL语句,如下所示。我已经尝试了下面的代码,但它不起作用。非常感谢帮助,预先感谢。
CREATE OR REPLACE FUNCTION Getcurrent()
RETURNS table AS $schedule$
$BODY$ BEGIN
SELECT *
FROM archived_table
WHERE table_id>=ALL(SELECT table_id FROM archived_table);
RETURN schedule;
END;$BODY$
LANGUAGE plpgsql;
**********错误**********
ERROR: syntax error at or near "AS"
LINE 2: RETURNS table AS $schedule$
^
这是错误消息。
我已经引用了以下链接,并没有运气与此。 https://www.postgresql.org/docs/9.1/static/sql-createfunction.html 我在公司的服务器上使用pgAdminIII,在公共架构中。
希望的结果是一旦函数被调用就返回表。
'回报table'需要如图您发布的手动链接列列表中。 –
不相关的,但是:如果你打算返回'table_id'最高的行,那么在Postgres中有更有效的方法。 –
另外:“*在MySql中,这是基本的*”不,它不是因为你不能从那里返回一个结果集。 –