SQL Server中的多个条件更新语句

Tim*_*cox 1 sql sql-server concat set

我知道如何更新这两种情况.但是,如果我需要在语句中添加更多条件,我不知道如何继续.

所需的任务是更新1到10,2到20,3到30,5到50和0到00.它会是这样的:

update table 
set own = (case 
              when own in '1' then '10, 
           case 
              when own in'2' then '20'.....else '00' 
           end);
Run Code Online (Sandbox Code Playgroud)

或者最好将其分解为五个单独的更新语句,其中1,2,3,5和0分别处理?

期望的结果

own     own
 1      10
 2      20
 3      30
 5      50
 0      00
Run Code Online (Sandbox Code Playgroud)

scs*_*mon 5

您只需要一个案例陈述.我使用= vs in,因为你没有提供多个值.

update table 
set own=case 
            when own = '1' then '10'
            when own = '2' then '20'
            when own = '3' then '30'
            ....
            else '00' 
        End
Run Code Online (Sandbox Code Playgroud)