一个 表
     ID   Flag
     1    0
     2    0
     3    1
     4    0
    ...   ...
用sql语句 将ID = 4的flag置为 1,其余都为0,flag = 1 只能有1项
    ID   Flag
     1    0
     2    0
     3    0
     4    1
    ...   ...

解决方案 »

  1.   

    set rowcount 1
    update tb set flag=1 where id=4
    set rowcount 0
    update tb set falg=0 where id<>1 or id is null
      

  2.   

    declare @t table(ID int  , Flag  int)
     insert @t  select   1,    0 
     insert @t  select   2,    0 
     insert @t  select   3,    1 
     insert @t  select   4,    0 
    update @t set flag=(case when id=4 then 1 else 0 end )
    select * from @t(影響 4 個資料列)ID          Flag        
    ----------- ----------- 
    1           0
    2           0
    3           0
    4           1(影響 4 個資料列)