Convert Rows Into Columns SQL Server

前端 未结 2 469
生来不讨喜
生来不讨喜 2021-01-25 15:43

I want to convert my output which is like

BachNo|Release Qty 
----------
A     |10
A     |30
A     |40
B     |90
B     |30

I want to transpose

2条回答
  •  清酒与你
    2021-01-25 16:08

    For known number of columns its possible, but for dynamic number of columns am not very sure. Although you can use something like this and further split it later while processing.

    SELECT BatchNo , STUFF(( SELECT  ','+ ReleaseQty FROM TableName a
    WHERE b.BatchNo = a.BatchNo FOR XML PATH('')),1 ,1, '')  Members
    FROM TableName b
    GROUP BY BatchNo;
    

    This should give you an output of something like :

    BatchNo  | ReleaseQty
    -------- | ------------------------
    A        |  10,30,40
    B        |  90,30     
    

提交回复
热议问题