update [表名] set [所有总数]=[aa总数]+[bb总数]+[cc总数] Where ........

解决方案 »

  1.   

    需要把aa,bb,cc总数都要求出来,做成报表。
      

  2.   

    select field1,sum(case when aa = 0 then 1 else 0),
                  sum(case when aa = 1 then 1 else 0),
                  sum(case when aa = 2 then 1 else 0),
                  count(fild1)
    from tablename
    group by field1
    这样性能可能不是很好,但是如果不需要在一个sql中解决,那就随便你怎么写了,可以用视图。
      

  3.   

    select field1,sum(case when aa = 0 then 1 else 0 end ),
                  sum(case when aa = 1 then 1 else 0 end ),
                  sum(case when aa = 2 then 1 else 0 end ),
                  count(fild1)
    from tablename
    group by field1
    这样性能可能不是很好,但是如果不需要在一个sql中解决,那就随便你怎么写了,可以用视图。
      

  4.   

    我的意思:有两个字段:devicetype,city而devicetype有三种值
    进行查询生成报表,格式如下
    city  aa  bb  cc  
    --    --  --  --
    明白吗?
      

  5.   

    to lyxinfo:先谢了,请原谅我很愚,具体说create table student (city varchar(20),
     stype integer);city:城市,stype:学生类型(有3中值: 1:大学生,2中学生,3小学生)
    如何,按city查,生成报表:
    city 大学生(人数) 中学生 小学生  总人数
    ---  ---           --     --     --
    写sql?
      

  6.   

    Select sum(.大学生)as 大学生,sum(.中学生) as 中学生,sum(.小学生) as 小学生 ,sum(.大学生)+sum(.中学生)+sum(.小学生) as 总人数 groud by city注:.这前要加表名,如果只要一个City,代替groud by 为Where city=.....