如果是select qcbm,jcsl=sum(cast(jcsl as int)),qcmc,qctz
from 表
where riqi between '2004-01-01' and '2004-01-03'
group by qcbm ,qcmc,qctz  
  就有重复的记录,到底怎么办啊

解决方案 »

  1.   

    select qcbm,sum(cast(jcsl as numeric(10,2)))  as jcsl,qcmc,qctz...
    from 表
    where riqi between '2004-01-02' and '2004-01-04'
    group by qcbm,qcmc,qctz...
      

  2.   

    select acbm,b.jcsl,qcmc,qctz,.....
    from 表 a join(
    select id=min(id),jcsl=sum(jcsl)
    from 表
    group by qcbm
    )b on a.id=b.id
      

  3.   

    select qcbm,sum(cast(jcsl as numeric(10,2)))  as jcsl,qcmc,min(qctz) as qctz
    from 表
    where riqi between '2004-01-02' and '2004-01-04'
    group by qcbm,qcmc
      

  4.   

    --上面那个改一下:select acbm,b.jcsl,qcmc,qctz,.....
    from 表 a join(
    select id=min(id),jcsl=sum(cast(jcsl as int))
    from 表
    where riqi between '2004-01-02' and '2004-01-04'
    group by qcbm
    )b on a.id=b.id