PostgreSQL -Loop查询 - 错误

时间:2013-06-14 03:15:23

标签: postgresql loops for-loop

我是PostgreSQL的新手;我曾经和Toad合作过Oracle。 我运行以下代码,但无法使其正常工作。

begin
for prueba in
(select * from a_userid)
loop
update a_userid set user_id2 = nextval('seq_userid') 
where user_id = prueba.user_id;
commit;
end loop;
end;

错误是:

************ Error **********
ERROR: error de sintaxis en o cerca de «for»
SQL state: 42601
Character: 9

使用Oracle,它曾经以这种方式工作。我不知道问题出在哪里。我也尝试过使用:

LANGUAGE 'plpgsql';

最后......但它根本没有改变。

1 个答案:

答案 0 :(得分:1)

如果我理解你正在努力实现的目标,那么就不需要循环了。简单的UPDATE会做到这一点

UPDATE a_userid
   SET user_id = nextval('seq_userid');

这是 SQLFiddle 演示