【问题标题】:ERROR: "coalesce" is not a known variable in INTO clause错误:“coalesce”不是 INTO 子句中的已知变量
【发布时间】:2015-12-30 09:44:48
【问题描述】:

以下是我的示例函数

create or replace function samp(in a int) returns int as
$$
declare 
val int;
val1 int;
begin
select coalesce(a-1,1) into val,coalesce(a-2,1) into val1;
return val + val1;
end;
$$
language plpgsql 

执行时出现以下错误

错误:“coalesce”不是已知变量第 7 行:选择 将(a-1,1) 合并为 val,将(a-2,1) 合并为 val1;

【问题讨论】:

    标签: sql postgresql select postgresql-9.2 select-into


    【解决方案1】:

    您的语法错误 - into 是适用于所有变量的单个子句,而不是应适用于每个变量的关键字:

    SELECT coalesce(a-1,1), coalesce(a-2,1)
    INTO   val, val1;
    

    【讨论】:

    • 嗯。我从来不知道你可以多次指定into,并且一直使用匿名记录。不错。
    • @CraigRinger 我很确定你不能。它应该是一个 INTO 子句。您确实可以有多个目标,每个选择列表项一个。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-09-14
    • 1970-01-01
    • 1970-01-01
    • 2022-12-04
    • 2017-09-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多