Wednesday, November 14, 2018

Convert Rows in to Columns in SQL

I am facing an issue in which I need to convert Rows in to Column in SQL.

SELECT id,
       video_data1,
       video_data2,
       video_data3
FROM   (  SELECT   (tv.id),
                    Cast(english_value AS  NVARCHAR(max)) AS 'English_value', tv.NAME AS 'Category_Name',
                    'Video_Data' + cast(row_number() OVER(partition BY tv.id ORDER BY tv.id) AS varchar(10))   columnsequence
                FROM     tv ) temp PIVOT ( max(english_value) FOR columnsequence IN (video_data1,
                                                                                     video_data2,
                                                                                     video_data3) ) piv

As you can see I am using Cast(english_value AS  NVARCHAR(max)), it due to I cannot use ntext in max so I need to change
data type .

After using Pivot: 


Refer Link:
https://www.youtube.com/watch?v=C0mQqDnF7wQ



No comments:

Post a Comment