Click here to Skip to main content
15,884,629 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
Hi
I have inner table like

CommentID FirstName
15 Davidson Lincoln
15 JohnFirstNameJoI
15 testf 1
17 Davidson Lincoln
17 fp1
17 JohnFirstNameJoI
17 testf p1
18 Davidson Lincoln
18 html
18 JohnFirstNameJoI
19 Davidson Lincoln
19 html
19 JohnFirstNameJoI

now i want this in following format

CommentID FirstName
15 Davidson Lincoln,JohnFirstNameJoI,testf

17 Davidson Lincoln,fp1,JohnFirstNameJoI p1,testf p1

18 Davidson Lincoln,html,JohnFirstNameJoI

19 Davidson Lincoln,html,JohnFirstNameJoI

I mean i wanna first name in single cell on the basis of commentid.Please provide me any solution.

Thank and Regards
Rahul Sharma
Posted
Comments
Mohan Gopi 12-Nov-13 6:36am    
Hi Rahul, can u share me your code.
Rahul_Pandit 12-Nov-13 6:48am    
SELECT PT_tblComments.CommentID, tblLogin.FirstName, PT_tblComments.CommentText CommentFRom FROM PT_tblSendToDetails tblSendTo
JOIN BT_tblLogin tblLogin ON UserID = LoginID
JOIN PT_tblComments ON PT_tblComments.CommentID = tblSendTo.CommentID
GROUP BY PT_tblComments.CommentID, tblLogin.FirstName, PT_tblComments.CommentText

1 solution

You can do that with the help of FOR XML PATH and Stuff.

SQL
SELECT C.CommentID as CommentID,
STUFF(( SELECT ',' + Sub.FirstName as [text()]
        FROM Consumer Sub Where Sub.CommentID = C.CommentID
        FOR XML PATH ('')),1,1,'')
        as FirstNames
From Consumer C
 
Share this answer
 
Comments
Rahul_Pandit 13-Nov-13 0:23am    
I already found a solution but your solution is also fine..i accept it Ashish
Ashish_Agrawal 13-Nov-13 10:38am    
Thanks Rahul. However, would like know the solution you found.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900