PostgreSQL - 声明整数变量

3
我正在尝试在PostgreSQL SQL脚本中声明一个默认值为0的整数变量:

我尝试在PostgreSQL SQL脚本中声明一个默认值为0的整型变量:

DECLARE user_id integer;

但它返回异常:

错误:在 "integer" 附近有语法错误

我不确定如何声明一个变量并在 while 循环中使用这个变量。


https://dev59.com/XnI_5IYBdhLWcg3wMf5_ - user330315
2个回答

6

你必须把代码放在一个用户定义的函数里,否则它不能在SQL窗口工作。下面的示例是一个返回您发送的数字的函数。

  --mybase is your database name. If public, remove it.
  CREATE OR REPLACE FUNCTION mybase.my_new_rotine(numeric)
  RETURNS numeric AS
  $BODY$
  --here, get the first variable from function
    declare id numeric= $1;

    begin
   --return the number
       return id;
    end;
  $BODY$

  LANGUAGE plpgsql VOLATILE

然后,您可以在 SQL 窗口中使用它,如下所示:
  select * from mybase.my_new_rotine(1)

将返回1


5

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接