Oracle - SQL选择2列,其中第二列与第一列具有相同的ID,但不相等

时间:2016-08-16 19:42:27

标签: sql oracle

我试图更新我的桌子,会发生什么,我有3列ID_1ID_2ID_1是唯一的,ID_2不是。 ID_2ID_1的分组,ID_1是分组的分组。

我正在做的是说哪个ID_1属于哪个群组(ID_2),而他们可能属于同一个订单。

ID_1   | ID_2  | order
------ | ------|------
1      | 1     | a
2      | 1     | a
4      | 1     | a
5      | 1     | a
6      | 6     | a
7      | 6     | a

现在,我想要的是update all字段where ID_2 = ID_1 (when id_1 = 1 update all id_2 = 1) except when id_2 = id_1

我该怎么做?

1 个答案:

答案 0 :(得分:0)

我认为这就是你想要的(你没有为表命名,所以我把它命名为T):

UPDATE  T  
SET     ID_2 = 1  
WHERE   ID_1 = 1 AND ID_2 <> 1;