简体   繁体   English

如何在查询MSSQL中合并行

[英]How to combine row in query mssql

SELECT 
     PO.ITEM_NO,
     PO_NO,
     PO.DESCRIPT,
     PO.REM1,
     QTY 
FROM PODSCRP PO ,PRODUCT P 
WHERE P.ITEM_NO=PO.ITEM_NO AND PO.PO_NO ='PO170010'

查询结果

I want to get result : 我想得到结果:

if REM1=1 this will FOC1_QTY,
  REM1=2 FOC2_QTY,
  REM1=NULL is SALE_QTY
  and if not include REM1 VALUE 1 or 2, There is not FOC value so FOC1_QTY and FOC2_QTY must be 0.

I want to pull out the query like following table. 我想拉出查询如下表。

ITEM_NO  FOC1_QTY FOC2_QTY  SALE_QTY 
P00001   10       100           100
P00002   0        0             100
P00004   0        0             100

How to do sql query for above table.. 上表如何做sql查询..

Try this, 尝试这个,

DECLARE @T TABLE(ITEM_NO VARCHAR(10),REM1 INT,QTY INT)
INSERT INTO @T VALUES ('P00001',NULL,100),
                      ('P00001',1,10),
                      ('P00001',2,100)

SELECT  ITEM_NO
        ,[1] FOC1_QTY
        ,[2] FOC2_QTY
        ,[0] SALE_QTY
FROM    (
        SELECT ITEM_NO,ISNULL(REM1,0)REM1,QTY FROM @T
        )A
PIVOT(
     MAX(QTY) FOR REM1 IN([1],[2],[0] ) 
     )PVT

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM