如何使用单个查询更新所有表值

Kaj*_*ser 0 sql-server-2005

海友

我有这样的桌子

TBLKEY      EMPKEY                         EMPNAME
----------- ------------------------------ ------------------------------
1           101                            RAJA
2           105                            RAJA
3           106                            RAJA
4           110                            RAJA
Run Code Online (Sandbox Code Playgroud)

我想像这样更新

TBLKEY      EMPKEY                         EMPNAME
----------- ------------------------------ ------------------------------
1           101                            RAJA
2           105                            POOJA
3           106                            THRIU
4           110                            POOJA
Run Code Online (Sandbox Code Playgroud)

在这里我sholud只使用一个query.i运行该查询我sholud得到像这样的输出不是逐个更新

Ior*_*nev 5

试试这样:

UPDATE myTable
SET EMPNAME = CASE WHEN TBLKEY = 2 THEN 'POOJA'
                   WHEN TBLKEY = 3 THEN 'THRIU'
                   WHEN TBLKEY = 4 THEN 'POOJA' END
WHERE TBLKEY IN ( 2, 3, 4 )
Run Code Online (Sandbox Code Playgroud)