select sum(本日入库),sum(本日销售),sum(报损)
from 表
group by (convert(char(7),时间,120)

解决方案 »

  1.   

    select
        啤酒名称,
        月份 = convert(char(6),时间,112),
        月累计入库数量 = sum(本日入库),
        月累计销售数量 = sum(本日销售),
        月累计报损数量 = sum(报损)
    from 表
    group by
        啤酒名称,convert(char(6),时间,112)
      

  2.   

    >>每一种酒都要生成一条统计记录!
    多group by 几个字段~~
      

  3.   

    兄弟要区分每一种酒,必须要该酒的特定列,如条码,然后在group by!如为两张表,必须用啤酒名称,关联
      

  4.   

    libin_ftsafe(子陌红尘) 的应该是正确的
      

  5.   

    那这个是对的啊
    select
        啤酒名称,
        月份 = convert(char(6),时间,112),
        月累计入库数量 = sum(本日入库),
        月累计销售数量 = sum(本日销售),
        月累计报损数量 = sum(报损)
    from 表
    group by
        啤酒名称,convert(char(6),时间,112)
      

  6.   

    select convert(char(6),'2004/10/10',112)
    結果:2004/1
      

  7.   

    libin_ftsafe(子陌红尘) 的 convert(char(6),时间,112) 带了年份的月份不会出现不同年份的相同月份的问题
    建议楼主这样的表不要带上累计的字段,入库,出库字段都在一个表,如果一天多次出库入库,多个终端使用该程序,那会出混乱的
      

  8.   

    convert(char(6),时间,112) -->convert(char(7),时间,112)
      

  9.   

    谢谢大家!子陌红尘兄是正确的,但是我还想在这句SQL中加上统计年的信息呢?
      

  10.   

    select a.*,b.年累计入库数量,b.年累计销售数量,b.年累计报损数量
    from(
    select
        啤酒名称,
        年月 = convert(char(7),时间,120),
        月累计入库数量 = sum(本日入库),
        月累计销售数量 = sum(本日销售),
        月累计报损数量 = sum(报损)
    from 表
    group by
        啤酒名称,convert(char(7),时间,120)
    )a,(
    select
        啤酒名称,
        年月 = convert(char(4),时间,112),
        年累计入库数量 = sum(本日入库),
        年累计销售数量 = sum(本日销售),
        年累计报损数量 = sum(报损)
    from 表
    group by
        啤酒名称,convert(char(4),时间,112)
    )b where a.年月 like b.年月+'%'
      

  11.   

    select
        啤酒名称,
        convert(char(6),时间,112) as 月份,
        sum(本日入库) as 月累计入库数量,
        sum(本日销售) as 月累计销售数量,
        sum(报损) as 月累计报损数量
    from 表
    group by
        啤酒名称,convert(char(6),时间,112)