如何在SQL中附加列?

时间:2015-08-19 14:51:34

标签: sql-server append multiple-columns

我在SQL Server 2012中尝试过不同的东西来追加列。 CONCAT合并列如下所示:catdogparrot,而我希望它位于如下列表中:

 cat
 dog
 parrot

我还在SQL中尝试了+,给了我相同的结果。我看到' ||'同样,但由于某种原因,它在第二个管道上说错了语法。有没有办法将列附加到新列?或者我是否必须从多列创建新列?这些列位于同一个表中。任何建议都是非常感谢的建议,谢谢!

2 个答案:

答案 0 :(得分:2)

我不确定你要做什么,但你可以尝试使用

CONCAT(' - ', `column1`, ' - ', `column2`, ' - ', ... `column999`)

答案 1 :(得分:0)

最终这可以帮助您:您可以将分隔符设置为任何序列,甚至是CHAR(13)+CHAR(10),这是一个Windows换行符。

DECLARE @dummyTbl TABLE(animal VARCHAR(10));
INSERT INTO @dummyTbl
VALUES('cat'),('dog'),('parrots');

DECLARE @separator VARCHAR(5)= ' / ';

SELECT STUFF(
(
    SELECT @separator + animal 
    FROM @dummyTbl AS dt
    FOR XML PATH(''),TYPE
).value('.','varchar(max)'),1,LEN(@separator),'');