要求:语句直接在查询分析器中执行并按条件更新数据库表名:T
字段:ID A B C D E F J
数据量:大概100万条A - F 都是整型值
判断 A - F 中包含几个奇数
然后更新 字段 J比如 A - F 中包含4个奇数,那么 J = '4:2'

解决方案 »

  1.   

    update T set J=cast(A%2+B%2+C%2+D%2+E%2+F%2 as varchar)+':'+cast(6-A%2+B%2+C%2+D%2+E%2+F%2 as varchar)
      

  2.   


    update T set 
    J=cast(A%2+B%2+C%2+D%2+E%2+F%2 as varchar)+':'+cast(6-A%2+B%2+C%2+D%2+E%2+F%2 as varchar)
      

  3.   

    declare @i intUpdate T
    Set @i= case when A%2=1 then 1 else 0 end+ case when B%2=1 then 1 else 0 end
          +case when C%2=1 then 1 else 0 end+ case when D%2=1 then 1 else 0 end
          +case when E%2=1 then 1 else 0 end+ case when F%2=1 then 1 else 0 end,
        J= rtrim(@i)+':'+rtrim(6-@i)