आप UNPIVOT<का उपयोग कर सकते हैं /कोड>
स्तंभों को पंक्तियों में बदलने का कार्य:
select id, value
from yourtable
unpivot
(
value
for col in ([fName], [lName], [Address], [PostCode], [ContactNumber])
) unpiv
देखें SQL Fiddle with Demo ।
अनपिवट सभी स्तंभों पर समान होने के लिए डेटाटाइप की आवश्यकता होगी। तो आपको एक कास्ट
करना पड़ सकता है /रूपांतरित करें
इसके समान विभिन्न डेटाटाइप वाले किसी भी कॉलम पर:
select id, value
from
(
select id, [fName], [lName], [Address], [PostCode],
cast([ContactNumber] as varchar(15)) [ContactNumber]
from yourtable
) src
unpivot
(
value
for col in ([fName], [lName], [Address], [PostCode], [ContactNumber])
) unpiv;
देखें SQL Fiddle with Demo ।
SQL Server 2008 से शुरू होकर, इसे CROSS APPLY
. का उपयोग करके भी लिखा जा सकता है VALUES
. के साथ :
select t.id,
c.value
from yourtable t
cross apply
(
values(fName),
(lName),
(Address),
(PostCode),
(cast(ContactNumber as varchar(15)))
) c (value)
देखें SQL Fiddle with Demo