34,576
社区成员
发帖
与我相关
我的任务
分享
create table 库存明细
(规格 char(8), 数量 int, 标记 char(6))
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) '入库',
sum(case 标记 when '出库' then 数量 else 0 end) '出库'
from 库存明细
group by 规格
规格 入库 出库
-------- ----------- -----------
608 ZZ 100 50
609 ZZ 100 0
(2 row(s) affected)
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
*/
select 规格,
sum(case when 标记='入库' then 数量 else 0 end) as 入库,
sum(case when 标记='出库' then 数量 else 0 end) as 出库
from 库存明细
group by 规格