Test Data
DECLARE @t TABLE (Data NVARCHAR(1000))
INSERT INTO @t
VALUES
('1,2,3,4,5'),
('6,7,8,9,10'),
('A,B,C,D,E')
Query
;WITH Split_Fields (Field, xmlfields)
AS
(
SELECT Data AS Field,
CONVERT(XML,'<Fields><field>'
+ REPLACE(Data,',', '</field><field>') + '</field></Fields>') AS xmlfields
FROM @t
)
SELECT
xmlfields.value('/Fields[1]/field[1]','varchar(100)') AS Column1,
xmlfields.value('/Fields[1]/field[2]','varchar(100)') AS Column2,
xmlfields.value('/Fields[1]/field[3]','varchar(100)') AS Column3,
xmlfields.value('/Fields[1]/field[4]','varchar(100)') AS Column4,
xmlfields.value('/Fields[1]/field[5]','varchar(100)') AS Column5
FROM Split_Fields
Result Set
╔═════════╦═════════╦═════════╦═════════╦═════════╗
║ Column1 ║ Column2 ║ Column3 ║ Column4 ║ Column5 ║
╠═════════╬═════════╬═════════╬═════════╬═════════╣
║ 1 ║ 2 ║ 3 ║ 4 ║ 5 ║
║ 6 ║ 7 ║ 8 ║ 9 ║ 10 ║
║ A ║ B ║ C ║ D ║ E ║
╚═════════╩═════════╩═════════╩═════════╩═════════╝
EDIT
After you have asked me to explain further how you would get data into column I dont know how much more I can explain it. But Here is a demonstration on your data, I dont know how to changed you ID from -1
to P00000000001
, anyway this is how you would go about doing it with your data.
Query
DECLARE @t TABLE (DATA NVARCHAR(4000))
INSERT INTO @t
VALUES
('-1,H0000001,2011-02-19 00:00:00,I - D,GOA,INDIA ')
;WITH Split_Fields (Field, xmlfields)
AS
(
SELECT Data AS Field,
CONVERT(XML,'<Fields><field>'
+ REPLACE(Data,',', '</field><field>') + '</field></Fields>') AS xmlfields
FROM @t
)
SELECT
xmlfields.value('/Fields[1]/field[1]','NVARCHAR(MAX)') AS Column1,
xmlfields.value('/Fields[1]/field[2]','NVARCHAR(MAX)') AS ID,
xmlfields.value('/Fields[1]/field[3]','NVARCHAR(MAX)') AS [Date],
xmlfields.value('/Fields[1]/field[4]','NVARCHAR(MAX)') AS Div,
xmlfields.value('/Fields[1]/field[5]','NVARCHAR(MAX)') AS [State],
xmlfields.value('/Fields[1]/field[6]','NVARCHAR(MAX)') AS [Country]
FROM Split_Fields
Result
╔═════════╦══════════╦═════════════════════╦═══════╦═══════╦═════════╗
║ Column1 ║ ID ║ Date ║ Div ║ State ║ Country ║
╠═════════╬══════════╬═════════════════════╬═══════╬═══════╬═════════╣
║ -1 ║ H0000001 ║ 2011-02-19 00:00:00 ║ I - D ║ GOA ║ INDIA ║
╚═════════╩══════════╩═════════════════════╩═══════╩═══════╩═════════╝