刚刚在我们的11g中进行了一些数据迁移,发现了一种情况,通常我会创建几个单独的UPDATE脚本并进行思考。有没有办法使用同一脚本中的不同WHERE子句进行多个更新?Oracle使用多个WHERE子句更新单个表
我的意思,而不是
UPDATE table1 SET value1=X WHERE value1=A;
UPDATE table1 SET value1=Y WHERE value1=B;
UPDATE table1 SET value1=Z WHERE value1=C;
你们能不能接近
UPDATE table1 SET value1=X WHERE value1=A,SET value1=Y WHERE value1=B, SET value1=Z WHERE value1=Z;
显然上面的语法是错误的,但是这是我的观点。可以这样做吗,或者你只需要做三个独立的脚本?
预先感谢
KS
我不是一个更新列取决于它自己的价值的大粉丝,尤其是其中多个,结合起来。在_other_列上更新条件似乎在逻辑上更安全一些。 –
我认为你的第二个SQL有一个错字,最后它说'WHERE value1 = Z',但是在第一个SQL中它说'WHERE value1 = C' – gpeche