0

我想加入表中的所有数据。例如:我有一张这样的桌子,

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

4

2 回答 2

0

我正在使用 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, '')
于 2012-12-27T12:38:25.697 回答
0

对于ORACLE,试试这个:

SELECT 
   LISTAGG(name, ',') WITHIN GROUP (ORDER BY name) AS NAME
  FROM  TABLE
WHERE ForeingId= '1'
于 2012-04-25T06:02:41.443 回答