1

我有一个像这样的两列的表

col1     col2
 a        b
 b        a
 c        d
 d        a

我想得到这两列的不同值,并用逗号分隔。预期输出是这样的

a,b,c,d
4

2 回答 2

4

以下示例将行值连接到一个变量中

DECLARE @val nvarchar(max)
SELECT @val = COALESCE(@val + ',' + col1, col1)
FROM (SELECT col1
      FROM dbo.twoColumns
      UNION
      SELECT col2
      FROM dbo.twoColumns
      ) x
SELECT @val

演示SQLFiddle

于 2013-11-05T13:29:32.687 回答
2

试试这个,我觉得很容易

select group_concat(distinct(c)) as d
from 
(
  select col1 c from your_table
  union
  select col2 c from your_table
) as d
于 2013-11-05T13:00:26.937 回答