我想更新ORACLE/DB中表的列。我有一列包含code = 0
,我希望它被此列的最大值替换。每行有一个0需要改变,并有从表中列的新的最大值。 我只会这样做,这就是为什么我不需要PL/SQL。在没有PL/SQL的情况下,oracle中每行的UPDATE列最大值
例如,如果我有
CLIENT CODE
JOJO 99
JUJU 0
JAJA 0
我希望它成为
CLIENT CODE
JOJO 99
JUJU 100
JAJA 101
,如果我做
update CLIENT set CODE = (select MAX(CODE) from CLIENT)+1 WHERE CODE = 0;
不幸的是,命令放(比方说,我最大的为99)在我所有的行100的价值100与code = 0
我希望每行与code = 0
为增加
的独特价值能否请你帮我与
CODE从0开始?你能用序列吗? '更新客户端设置代码= MYSEQ.NEXTVAL WHERE代码= 0' –
我想这是一个很好的临时解决方案。问题在于代码是3 char上的varchar。我可以创建一个以100开头的序列,并用它更新我的行。“序列”是在tcl代码中处理的(这完全是一个脏东西)。我想我只是纠正这种方式,然后要求代码 – joris