我建议使用
For XML将多行返回为单行,然后使用
STUFF删除多余的逗号。像这样的东西:
SELECt O.OrderId ,STUFF( ( SELECT ',' + E.Name AS [text()] FROM OrderExtras OE Inner Join Extras E ON E.ExtrasId = OE.OrderExtras_ExtrasID WHERe O.OrderId = OE.OrderExtras_OrderID ORDER BY E.Name FOR XML PATH('') ), 1, 1, '') AS ColListFROM Orders O这是SQL Fiddle。
祝你好运。



