我有两个表,它们连接在一起并存储在一个临时表中。
Temp 表包含以下形式的数据:
|ID|Name |Code|
|1 | 100 |AAAA|
|1 | 100 |AAAB|
|1 | 100 |AAAA|
|2 | 200 |AAAZ|
more...
现在我想要以下形式的结果,
╔════╦═════════════════════╗
║ ID ║ Name ║ Code ║
╠════╬═════════════════════╣
║ 1 ║ 100 ║ AAAA, AAAB ║
║ 2 ║ 200 ║ AAAZ ║
╚════╩═════════════════════╝
所以我写了下面的查询,它产生了类似的输出,所以我的问题是,有没有其他方法可以实现这一点。
SELECT Distinct BSE_ID
,BSE_Name
,STUFF((
SELECT ', ' + CAST(EBS_ExternalCode AS VARCHAR(100)) [text()]
FROM #tmpBkgSvc
WHERE BSE_ID = T.BSE_ID
FOR XML PATH('')
,TYPE
).value('.', 'NVARCHAR(MAX)'), 1, 2, ' ') EBS_ExternalCode
FROM #tmpBkgSvc T