统计各个商品每月的销售金额

本文介绍如何统计每个商品每月的销售金额,涉及主表ORDR与销售订单子表RDR1,包括docentry(单号)、cardcode(客户)、docdate(日期)、linenum(行号)、itemcode(物料)、quantity(数量)和price(单价)等关键字段。
摘要由CSDN通过智能技术生成

统计各个商品每月的销售金额

-- 主表ORDR 其中单号docentry, 客户cardcode,日期docdate
-- 销售订单子表RDR1 其中单号docentry, 行号linenum,物料itemcode,数量quantity, 单价price

select t.cardcode '客户编码',t1.itemcode '物料编码',
	isnull(convert(dec(18,2),sum(case month(t.docdate) WHEN '1' then t1.quantity * t1.price end)),0) '一月',
	isnull(convert(dec(18,2),sum(case month(t.docdate) WHEN '2' then t1.quantity * t1.price end)),0) '二月',
isnull(convert(dec(18,2),sum(case month(t.docdate) WHEN '3' then t1.quantity * t1.price end)),0) '三月',
isnull(convert(dec(18,2),sum(case month(t.docdate) WHEN '4' then t1.quantity * t1.price end)),0) '四月',
isnull(convert(dec(18,2),sum(case month(t.docdate) WHEN '5' then t1.quantity * t1.price end)),0) '五月',
isnull(convert(dec(18,2),sum(case month(t.docdate) WHEN '6' then t1.quantity * t1.price end)),0) '六月',
isnull(convert(dec(18,2),sum(case month(t.docdate) WHEN '7' then t1.quantity * t1.price end)),0) '七月',
isnull(convert(dec(18,2),sum(case month(t.docdate) WHEN '8' then t1.quantity * t1.price end)),0) '八月',
isnull(convert(dec(18,2),sum(case month(t.docdate) WHEN '9' then t1.quantity * t1.price end)),0) '九月',
isnull(convert(dec(18,2),sum(case month(t.docdate) WHEN '10' then t1.quantity * t1.price end)),0) '十月',
isnull(convert(dec(18,2),sum(case month(t.docdate) WHEN '11' then t1.quantity * t1.price end)),0) '十一月',
isnull(convert(dec(18,2),sum(case month(t.docdate) WHEN '12' then t1.quantity * t1.price end)),0) '十二月'
from RDR1 t1
left join ORDR t on t.docentry = t1.docentry
group by t.cardcode,t1.itemcode




可参考:

; with   cte_tot  as
    select  PID, sum ( count ) totalmoney, convert ( varchar (10), month ( date ))+ '月'  date
   from  数据表  with (nolock)  where  date  between  '2013-01-01'  and  '2013-08-15'  group  by  PID, month ( date ) )
  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值