21
2012
05

数据分类汇总的代码

库存明细
规格 数量 标记
608 ZZ 100 入库
609 ZZ 100 入库
608 ZZ 50 出库

返回:
规格 入库 出库
608 ZZ 100 50
609 ZZ 100 0


SQL codeselect 规格,
sum(case when 标记='入库' then 数量 else 0 end) as 入库,
sum(case when 标记='出库' then 数量 else 0 end) as 出库
from 库存明细
group by 规格

declare @库存明细 table
(
    规格 varchar(10),数量 int,标记 varchar(4)
)
insert into @库存明细
select '608 ZZ',100,'入库' union all
select '609 ZZ',100,'入库' union all
select '608 ZZ',50,'出库'
 
select 规格,
SUM(CASE WHEN 标记='出库' THEN 数量 ELSE 0 END)  AS 出库,
SUM(CASE WHEN 标记='入库' THEN 数量 ELSE 0 END)  AS 入库
from @库存明细 GROUP BY 规格
/*
规格         出库          入库
---------- ----------- -----------
608 ZZ     50          100
609 ZZ     0           100
*/
 
 

« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。