Mysql ORACLE中同一表中两列的值匹配时的Update语句

Mysql ORACLE中同一表中两列的值匹配时的Update语句,mysql,sql,oracle,Mysql,Sql,Oracle,如何编写查询以更新Oracle中名称、城市和数量匹配的状态列 ID NAME CITY QTY STATUS ---------- --------------------- 1 ABC CHN 50 0 2 XYZ MUM 20 0 3 MNO KOL 30 0 4 ABC CHN 50 0 5 XYZ MUM 20 0 6 MNO KOL 40 0 查询执行

如何编写查询以更新Oracle中名称、城市和数量匹配的状态列

ID NAME  CITY    QTY   STATUS
---------- ---------------------
1 ABC    CHN      50   0
2 XYZ    MUM      20   0
3 MNO    KOL      30   0
4 ABC    CHN      50   0
5 XYZ    MUM      20   0
6 MNO    KOL      40   0 
查询执行后的结果
在给定的示例中,第1行和第4行的city和name值相等。第2行和第5行也是类似的。

我猜您需要

UPDATE table_name a
   SET status = (SELECT count(*)
                   FROM table_name b
                  WHERE a.name = b.name
                    AND a.qty  = b.qty
                    AND a.id  != b.id);

我猜你想

UPDATE table_name a
   SET status = (SELECT count(*)
                   FROM table_name b
                  WHERE a.name = b.name
                    AND a.qty  = b.qty
                    AND a.id  != b.id);

我猜你想

UPDATE table_name a
   SET status = (SELECT count(*)
                   FROM table_name b
                  WHERE a.name = b.name
                    AND a.qty  = b.qty
                    AND a.id  != b.id);

我猜你想

UPDATE table_name a
   SET status = (SELECT count(*)
                   FROM table_name b
                  WHERE a.name = b.name
                    AND a.qty  = b.qty
                    AND a.id  != b.id);

更新tblName集合状态,其中名称位于('ABC','XYZ')@Ullas:嗨,我举了个例子。我的意思是,在这些列(姓名和城市)中应该有两个匹配的记录。@Tapeshvar如果有多个列,那么在
clause@Ashes:在上述示例中,我的意思是,如果两条记录具有相同的名称和相同的城市,则更新状态列
update tblName SET STATUS WHERE NAME In('ABC','XYZ')@Ullas:嗨,我举了个例子。我的意思是,在这些列(姓名和城市)中应该有两个匹配的记录。@Tapeshvar如果有多个列,那么在
clause@Ashes:在上述示例中,我的意思是,如果两条记录具有相同的名称和相同的城市,则更新状态列
update tblName SET STATUS WHERE NAME In('ABC','XYZ')@Ullas:嗨,我举了个例子。我的意思是,在这些列(姓名和城市)中应该有两个匹配的记录。@Tapeshvar如果有多个列,那么在
clause@Ashes:在上述示例中,我的意思是,如果两条记录具有相同的名称和相同的城市,则更新状态列
update tblName SET STATUS WHERE NAME In('ABC','XYZ')@Ullas:嗨,我举了个例子。我的意思是,在这些列(姓名和城市)中应该有两个匹配的记录。@Tapeshvar如果有多个列,那么在
clause@Ashes:在上面的示例中,我的意思是,如果两个记录具有相同的名称和相同的城市,则更新状态列