1
SELECT RESVID, VEHTYPE FROM (SELECT dbo.T_VEH_VEHRESERVATION.RESVID, TABLEVEHICLE.VEHTYPE, TABLEVEHICLE.VEHREGID FROM (SELECT dbo.T_VEH_VEHCATEGORY.VEHBRANDNAME + N' ' + dbo.T_VEH_VEHCLASS.VEHCLASSNAME AS VEHTYPE, dbo.T_VEH_VEHREGISTRATION.VEHREGID FROM dbo.T_VEH_VEHCATEGORY WHERE (dbo.T_VEH_VEHREGISTRATION.DELIND = 0) ) AS TABLEVEHICLE INNER JOIN dbo.T_VEH_VEHRESERVATION ON TABLEVEHICLE.VEHREGID = dbo.T_VEH_VEHRESERVATION.VEHREGID ) GROUP BY dbo.T_VEH_VEHRESERVATION.RESVID ) AS TABLERESV 

enter image description here

I would like to concatenate the RESVID: 33 (duplicate row) into 1.

This is just an example, of course what I Want is every duplicate row with this situation will be solved.

I try the XML PATH function, but does not work at all, and I have no idea what goes wrong, i will be appreciate if any help me on my code, and give me explanation on that.

My desire result:

RESVID | VEHTYPE ------------------- 33 | Proton Economic, Toyota Mid-size SUV 

and i have only one table on my view

enter image description here

Thanks

3 Answers 3

2

Try like this....

Select Distinct RESVID ,Stuff((Select ','+VEHTYPE from TabelName A where A.RESVID =B.RESVID For Xml Path('')),1,1,'') as VEHTYPE from TabelName B 
Sign up to request clarification or add additional context in comments.

11 Comments

Hi there, thank for your reply, this method i have tried, but always get sql execution error. Mostly having problems near 'where'. What cause this error? Thanks
SELECT RESVID, STUFF(( SELECT ', ' + VEHTYPE FROM TABLERESV A WHERE (A.VEHREGID = B.VEHREGID) FOR XML PATH('')), 1,2, '') AS VEHTYPE FROM TABLERESV B
try A.RESVID= B.RESVID like this....here sql fiddle demo...sqlfiddle.com/#!3/f53e4/3
i can not chat i m in office
|
1

Try with STUFF()

SELECT RESVID , STUFF(( SELECT ','+ VEHTYPE FROM TABLERESV b WHERE a.RESVID = b.RESVID FOR XML PATH('') ) ,1,1,'') AS VEHTYPE FROM TABLERESV a GROUP BY a.RESVID 

Comments

1

trY this:

 SELECT B.resvid, STUFF( (SELECT ',' + A.vehtype FROM TABLE_NAME A WHERE A.resvid=B.resvid FOR XML PATH('')),1,1,'') AS CSV FROM TABLE_NAME B GROUP BY B.resvid 

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.