Postgres sql以循环周期

时间:2015-05-27 12:51:01

标签: postgresql function printing

我需要在循环周期中打印变量 i 。 我使用以下函数:

csstress=>
csstress=> CREATE OR REPLACE FUNCTION "mgtest" () RETURNS integer AS
csstress-> $BODY$
csstress$> DECLARE
csstress$> i integer;
csstress$> BEGIN
csstress$> i := 0;
csstress$> FOR i IN 1..4 LOOP
csstress$> RAISE NOTICE 'Calling cs_create_job(%)', i;
csstress$> return i;
csstress$> END LOOP;
csstress$> END;
csstress$> $BODY$
csstress-> LANGUAGE 'plpgsql';
CREATE FUNCTION
csstress=>

但是当我调用该函数时,它只打印一个,第一个值

csstress=>
csstress=> select mgtest();
NOTICE:  Calling cs_create_job(1)
 mgtest
--------
      1
(1 row)

csstress=>

我做错了什么?如何强制该功能打印像

这样的东西
1
2
3
4

1 个答案:

答案 0 :(得分:0)

我在这里引用 wildplasser 对实际解决此问题的问题的评论。

  

不要把回报i;在循环内。请参阅this以便返回   集和行集。