[英]One column data into multiple column
I am using SQL Server and I want to data according to posid
in each column here is my code:我正在使用 SQL Server,我想根据每列中的posid
数据,这是我的代码:
select ItcodedGrp,ItheadCat, ItheadCls,ItheadGrp,POsid,
(sum(OpnQty) + sum(FaultyQty) + sum(UsedQty) + sum(RecQty) - sum(RejectQty) - sum(Issued) +
sum(DebitQty) + sum(AdjQty) + sum(STNQtyPls) - sum(STNQtyMin) - sum(POSQTY) - sum(TransitQty) - sum(FQtyMin)
+ sum(FQtyPlus) + sum(ReplaceQty)) as AllStock
from Vmgt_RSales_Stock
where POsid in (2,6,7,10,11,12,13,14) and ItcodedGrp like '28.01.059.%'
group by ItcodedGrp,ItheadCat, ItheadCls,ItheadGrp,POsid
order by POsid asc
and here is my result.这是我的结果。
I want the stock according to posid
in each column我想要根据每列中的posid
的库存
as you can see in above image my stock is showing in front of posid
but I want the all stock in column but posid
wise like let me give you an example the how my result should be like the below正如您在上图中所看到的,我的股票显示在posid
前面,但我想要列中的所有股票,但posid
明智的,例如让我举个例子,我的结果应该如何如下所示
You can use conditional aggregation.您可以使用条件聚合。 Your sum()
expression is lenghty so I would add one level of aggregation to avoid repeating it many times:您的sum()
表达式很长,所以我会添加一层聚合以避免多次重复:
select
ItcodedGrp,
ItheadCat,
ItheadCls,
ItheadGrp,
sum(AllStock) AllStock,
sum(case when POSid = 2 then AllStock end) POSid2,
sum(case when POSid = 6 then AllStock end) POSid6,
sum(case when POSid = 7 then AllStock end) POSid7,
sum(case when POSid = 10 then AllStock end) POSid10,
sum(case when POSid = 11 then AllStock end) POSid11,
sum(case when POSid = 12 then AllStock end) POSid12,
sum(case when POSid = 13 then AllStock end) POSid13,
sum(case when POSid = 14 then AllStock end) POSid14
from (
select
ItcodedGrp,
ItheadCat,
ItheadCls,
ItheadGrp,
POsid,
(
sum(OpnQty)
+ sum(FaultyQty)
+ sum(UsedQty)
+ sum(RecQty)
- sum(RejectQty)
- sum(Issued)
+ sum(DebitQty)
+ sum(AdjQty)
+ sum(STNQtyPls)
- sum(STNQtyMin)
- sum(POSQTY)
- sum(TransitQty)
- sum(FQtyMin)
+ sum(FQtyPlus)
+ sum(ReplaceQty)
) as AllStock
from Vmgt_RSales_Stock
where
POsid in (2,6,7,10,11,12,13,14)
and ItcodedGrp like '28.01.059.%'
group by
ItcodedGrp,
ItheadCat,
ItheadCls,
ItheadGrp,
POsid
) t
group by
tcodedGrp,
ItheadCat,
ItheadCls,
ItheadGrp
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.