我的表格有4列,例如:
key cusi isi name
1 46644UAQ1 US46642EAV83 A
1 46644UAR9 XS0062104145 A
1 254206AC9 A
2 05617YAJ8 US86359AXP38 B
2 885220BP7 B
2 null B
3 885220BP5 885220BP7345 c
由于cusi和isi列的存在,键和名称列内容会重复。在这种情况下,我想要转置只有几列,即cusi和isi列,这样我就可以得到id=1的一条记录和id=2的另一条记录。在我的用例中,最多可能有3个不同的cusi或3个isi列。
转置表应该如下所示:
key name cusi1 cusi2 cusi3 isi1 isi2 isi3
1 A 46644UAQ1 46644UAR9 254206AC9 US46642EAV83 XS0062104145 NULL
2 A 46644UAR9 05617YAJ8 885220BP7 US86359AXP38 NULL NULL
3 c 885220BP5 null null 885220BP7345 NULL NULL
在某些情况下,可能只有1行,就像上面的例子中key=3一样。
我知道SQL有PIVOT和UNPIVOT查询,但我不确定如何将其用于转置选择表的列。任何帮助都将是极大的帮助。谢谢。