Aide sur la requête de jointure TSQL

Basé sur les 2 arrays ci-dessous

declare @t1 table ( Id int, Title varchar(100), RelatedId int ) insert into @t1 values(1,'A',2) insert into @t1 values(1,'A',3) declare @t2 table ( Id int, Title varchar(100) ) insert into @t2 values (2,'B'), (3,'C') 

J'essaie d'get la sortie ci-dessous

 Id Title RelatedItems --------------------------------- 1 A 2 (B), 3 (C) 

J'ai essayé ce qui suit:

 select t1.Id,t1.Title, cast(t2.Id as varchar) + ' (' + t2.Title + ')' from @t1 as t1 left outer join @t2 as t2 on t1.RelatedId=t2.Id 

Mais cela donne 2 lignes différentes. Je veux juste une ligne avec datatables combinées dans la troisième colonne (comme indiqué ci-dessus). Pls. suggérer.

Utilisation:

 SELECT DISTINCT b.id, b.title, STUFF((SELECT ','+ CAST(t2.id AS VARCHAR(100)) + ' ('+ t2.title +')' FROM t2 JOIN t1 a ON a.relatedid = t2.id WHERE a.id = b.id FOR XML PATH('')), 1, 1, '') FROM t1 b