我在PostgreSQL的PL / pgSQL中遇到了奇怪的行为。我正在制作一个具有两个单独的FOR循环的函数。第一个运行完美,但第二个似乎被遗忘了。代码大致如下:
Declare r RECORD;
BEGIN
FOR r in (select something from a)
LOOP
DO SOMETHING;
END LOOP;
r:=NULL;
FOR r in (select something from b)
LOOP
DO SOMETHING;
END LOOP;
END;
当放在单独的函数中时,两个FOR循环都可以正常工作。我也尝试使用2个单独的记录变量,但这也不起作用。
我不明白为什么第二个循环被忽略了。
谢谢!