Postgresql 无法创建PG sql函数
我想在Posgresql中创建一个函数,返回一个表:Postgresql 无法创建PG sql函数,postgresql,Postgresql,我想在Posgresql中创建一个函数,返回一个表: create or replace function my_func1(var1 integer, var2 integer[], var3 integer) returns table(col1 integer, col2 integer, col3 timestamp) as begin select ......... end; language sql; 它说: ERROR: syntax error at o
create or replace function my_func1(var1 integer, var2 integer[], var3 integer)
returns table(col1 integer, col2 integer, col3 timestamp)
as
begin
select .........
end;
language sql;
它说:
ERROR: syntax error at or near "begin"
中没有
begin
。你的意思是创造一个新的世界吗
然后改用语言plpgsql
。并用引号将函数体括起来,无论哪种方式,它都是文本-最好是美元引号:
- 在一个数据库中没有
开始。你的意思是创造一个新的世界吗
然后改用语言plpgsql
。
并用引号将函数体括起来,无论哪种方式,它都是文本-最好是美元引号:
试试这个:
create or replace function my_func1(var1 integer, var2 integer[], var3 integer)
returns table(col1 integer, col2 integer, col3 timestamp)
as
$func$
begin
return query
select .........
end;
$func$
language plpgsql;
试试这个:
create or replace function my_func1(var1 integer, var2 integer[], var3 integer)
returns table(col1 integer, col2 integer, col3 timestamp)
as
$func$
begin
return query
select .........
end;
$func$
language plpgsql;
我应该将“$func$”放在函数末尾的什么位置:在语言plpgsql之前或之后代码>?@Torito:请参见手册中的示例。还有一匹没有名字的马,我不需要。@Torito:那你为什么问“我应该把……放在哪里?”?这在手册中得到了明确的回答。@Torito:我给你的链接中显示了这一点。但是如果你不想读手册,至少读一下欧文的链接答案。他详细地解释了这是什么以及如何使用它。我应该在函数末尾的哪个位置放置“$func$”:在语言plpgsql之前还是之后代码>?@Torito:请参见手册中的示例。还有一匹没有名字的马,我不需要。@Torito:那你为什么问“我应该把……放在哪里?”?这在手册中得到了明确的回答。@Torito:我给你的链接中显示了这一点。但是如果你不想读手册,至少读一下欧文的链接答案。他详细解释了那是什么以及如何使用它