sum(列)配合HAVING 只能对一个列进行条件筛选
如果我需要对以下例句进行分别筛选如何写拉/
select 营业员ID as 营业员编号, sum(销售明细.商品数量) as 销售数量 ,sum(销售明细.商品数量) as 退货数量.....having sum(销售明细)>0 and ....
   谢谢

解决方案 »

  1.   

    这个问题的提法有问题,对不起
    应该是这样:
        有一个列,记录中有正数与负数,我需要在查询同形成二个列,一个汇总正数,一个汇总负数,如:
    select sum(商品数量) as 销售数量,sum(商品数量) as 退货数量
    请问,在条件语句中如何筛选
       我试了一下:
    select sum(商品数量>0) as 销售数量,sum(商品数量<0) as 退货数量  反馈的数据不对
      

  2.   

    select sum(case when 标志字段='销售' then 商品数量 else 0 end) as 销售数量,sum(case when 标志字段='退货' then 商品数量 else 0 end) as 退货数量
      

  3.   

    不好意思,应为你发短消息给我,我以为数据库是ms sql server,以上是sql server的写法如果数据库不是sql server,请说明
      

  4.   

    select sum(case when 商品数量>0 then 商品数量 end) as 销售数量,sum(case when 商品数量<0 then 商品数量 end) as 退货数量
      

  5.   

    sql server:
    select sum(case when 商品数量>0 then 商品数量 else 0 end) as 销售数量,sum(case when 商品数量<0 then 商品数量 else 0 end) as 退货数量access:
    select sum(iif(商品数量>0,商品数量,0) as 销售数量,sum(iif(商品数量<0,商品数量,0) as 退货数量