现在有一个表 结构是这个样子:
工区编号     工区名称    产量  
001001       一区         3000
001002       二区         2000
001003       三区         2000
002001       其他         2000只要前三位相同,就表示他们的上级单位都一样
我想把相同上级单位的产量做一下汇总 ,请问怎么弄啊?
 

解决方案 »

  1.   

    select left(工区编号 ,3),sum(产量) from T group by left(工区编号 ,3)
      

  2.   

    select left(工区编号,3) 工区编号 , sum(产量) 产量
    from tb
    group by left(工区编号,3)
      

  3.   

    select sum(产量),left(工区编号,3) from 表 group by left(工区编号,3)
      

  4.   

    create table tb (工区编号 varchar(6), 工区名称 varchar(20),  产量 int  )
    insert into tb
    select '001001','一區' ,3000 
    union all
    select '001002','二區' ,2000 
    union all
    select '001003','三區' ,2000 
    union all
    select '002001','其他' ,2000 
    select left(工区编号,3) as 上级单位, sum(产量) as 产量汇总
    from tb
    group by left(工区编号,3)
    上级单位   产量汇总
    ------ -----------
    001    7000
    002    2000(2 個資料列受到影響)
      

  5.   

    谢谢 大家 ,你们的SQL是怎么学的啊?
      

  6.   

    SELECT SUM(产量) AS 产量, LEFT(工区编号, 3) AS 工区编号
    FROM (SELECT DISTINCT *
            FROM 表) DERIVEDTBL
    GROUP BY LEFT(工区编号, 3)