查询中有多个SET表达式?

Ale*_*lex 1 sql sql-server ssms

想要更新表列中的特定数据.

我可以使用以下一个条目:

UPDATE [BULDING].[dbo].[TB_DATA]
SET OFFICE
_ID = '4' where OFFICE__ID = '8';

但是我应该使用什么来进行多次更改 - 下面显然不起作用:

UPDATE [BULDING].[dbo].[TB_DATA]
SET OFFICE
_ID = '4' where OFFICE_ID = '8'
SET OFFICE
_ID = '4' where OFFICE_ID = '10'
SET OFFICE
_ID = '11' where OFFICE__ID = '3';

谢谢!

Red*_*ter 6

UPDATE [BULDING].[dbo].[TB_DATA]
SET OFFICE_ID = 
    case when office_id in ('8', '10') then '4'
        when office_id = '3' then '11'
        else office_id
    end
Run Code Online (Sandbox Code Playgroud)