यदि आपके पास वांछित कॉलम की जानकारी या अधिकतम संख्या है, तो आप एक साधारण PIVOT कर सकते हैं, अन्यथा, आपको DYNAMIC जाना होगा।
उदाहरण
Select *
From (
Select [Code]
,[Data]
,[Col] = concat('Data',Row_Number() over (Partition By [Code] Order by 1/0))
From YourTable
) src
Pivot (max([Data]) for [Col] in ([Data1],[Data2],[Data3],[Data4],[Data5])) pvt
रिटर्न
Code Data1 Data2 Data3 Data4 Data5
SL Payroll 22 33 43 NULL NULL