我有一个表MVKE,其中每个Article_#都被分配了一个VKORG(最多4个(。
Article_# | VKORG | >vmsta | vtweg | |
---|---|---|---|---|
1234 | 0001 | |||
1234 | 0002 | /td>1234 | 0003 | /td>>34|
1234 | 0004 | /td>>34|||
12346 | 0001 | /td>>34|||
12346 | 0003 | /td>>34[/tr>|||
12346 | 0004 | /td>>34
一个简单的PIVOT 怎么样
示例
Select *
From (
Select [Article_#]
,Col = concat('MVKE_',try_convert(int,[VKORG]))
,Val = 'Yes'
from YourTable
) src
Pivot (max(Val) for Col in ([MVKE_1],[MVKE_2],[MVKE_3],[MVKE_4]) ) pvt
结果
Article_# MVKE_1 MVKE_2 MVKE_3 MVKE_4
12345 Yes Yes Yes Yes
12346 Yes NULL Yes Yes