我想加入表中的所有数据。例如:我有一张这样的桌子,
ID Name ForeingId
----------------------
1 A 1
2 B 1
3 C 2
4 D 1
5 E 1
我想通过查询获得以下结果。比如 'SELECT ... WHERE ForeingId=1' 。我不想使用过程或功能。
结果:A,B,D,E
我想加入表中的所有数据。例如:我有一张这样的桌子,
ID Name ForeingId
----------------------
1 A 1
2 B 1
3 C 2
4 D 1
5 E 1
我想通过查询获得以下结果。比如 'SELECT ... WHERE ForeingId=1' 。我不想使用过程或功能。
结果:A,B,D,E
我正在使用 MSSQL
我感谢大家的答案。我找到了@mehul9595 评论链接的答案。
在 Microsoft SQL Server 2005 中模拟 group_concat MySQL 函数?
这边走:
SELECT STUFF(
(SELECT ',' + t.name FROM table_name t
where t.foreingId = 1 FOR XML PATH ('')), 1, 1, '')
对于ORACLE,试试这个:
SELECT
LISTAGG(name, ',') WITHIN GROUP (ORDER BY name) AS NAME
FROM TABLE
WHERE ForeingId= '1'