# Database Discussions > Microsoft SQL Server 2008 >  Ms sql group concat

## ssamples3

I have a similar situation.  I start out with a table that has data input into a column from another source. This data is comma delimited coming in.  I need to manipulate the data to remove a section at the end of each.  So I split the data and remove the end with the code below. (I added the ID column later to be able to sort. I also added WITH SCHEMABINDING later to add an XML index but nothing works.  I can remove this ... and the ID column, but I do not see any difference one way or the other): 

ALTER VIEW [dbo].[vw_Routing]
WITH SCHEMABINDING
AS 
SELECT TOP 99.9999 PERCENT

ROW_NUMBER() OVER (ORDER BY CableID)-1 as ID,
CableID AS [CableID], 
SUBSTRING(m.n.value('.[1]','varchar(8000)'),1,13) AS Routing
FROM
(
SELECT CableID,CAST('<XMLRoot><RowData>' + REPLACE([RouteNodeList],',','</RowData><RowData>') + '</RowData></XMLRoot>' AS XML) AS x
FROM   [dbo].[Cables] 
)t
CROSS APPLY x.nodes('/XMLRoot/RowData')m(n)

ORDER BY ID

Now I need to Concatenate data from the "Routing" column's rows into one row grouped by another column into a column again.  I have the code working except that it is reordering my data; I must have the data in the order it is input into the table as it is Cable Routing information.  I must also remove duplicates.  I use the following code.  The SELECT DISTINCT removes the duplicates, but reorders the data.  The SELECT (without DISTINCT) keeps the correct data order, but does NOT remove the duplicates:

Substring(
       (
SELECT DISTINCT ','+ x3.Routing  AS [text()] --This DISTINCT reorders the routes once concatenated.
 --SELECT  ','+ x3.Routing  AS [text()] --This without the DISTINCT does not remove duplicates.
From vw_Routing x3
Where x3.CableID = c.CableId
For XML PATH ('')
       ), 2, 1000) [Routing],

I tried the code you gave above and it provided the same results with the DISTINCT reordering the data but without DISTINCT not removing the duplicates.

PLEASE HELP!!!

Thanks,
Sherry S.

----------

