I have 2 tables named \'Categories\' and \'CSTagContent\' shown below with data...
TABLE 1: \'Categories\'
CategoryID PostID <-
SAMPLE TABLES
SELECT * INTO Categories
FROM
(
SELECT 1148 CategoryId, 581771 PostId
UNION ALL
SELECT 1183 CategoryId, 581771 PostId
UNION ALL
SELECT 1184 CategoryId, 581771 PostId
)TAB
SELECT * INTO TagContent
FROM
(
SELECT 1 [Id], '
' TagContent , '2014-11-08' StartDate, '2014-11-14' EndDate, 1148 CategoryID, NULL TagTitle
UNION ALL
SELECT 2, '
', '2014-11-25', '2014-12-05', 1183, 'Aging Title
'
UNION ALL
SELECT 3, '
', '2014-11-25', '2014-11-27', 1184, 'Allergies Title
'
)TAB
Now we convert TagTitle to Ambersand seperated valuesfor the same TagContent. Since XML format is used we need to replace >, < and&to <, > and &.
QUERY
SELECT DISTINCT TagContent,STUFF(REPLACE(REPLACE(REPLACE(REPLACE(SUBSTRING(
(SELECT '&' + TagTitle
FROM TagContent T2
WHERE ST.TagContent=T2.TagContent
FOR XML PATH('')),2,200000),'<','<'),'>','>'),'&','&'),'amp;',''),1,'') TagTitle
FROM Categories CPC
JOIN TagContent ST ON CPC.CategoryId=ST.CategoryId