Oracle SQL - 需要在单个更新查询中更新2行

时间:2014-07-10 09:52:03

标签: mysql sql oracle-sqldeveloper

我们能否通过SINGLE更新语句更新第一行中的3个字段和第二行中的1个字段。除了一个键之外,所有关键字段在2行之间是不同的。如果可能请告诉我。

对于Ex:

员工在一个表中有两行数据。我将在第一行更新名称,位置,密码并在第二行更新薪资类型

1 个答案:

答案 0 :(得分:1)

是的,你可以这样做。伪代码:

update table
set 
col1 = case when rowid = 1 then value1 else col1, --Only update with new value for row 1
col2 = case when rowid = 1 then value2 else col2,
col3 = case when rowid = 2 then value3 else col3, --Only update with new value for row 2
...
where rowid in (col1,col2)