在sql server中如何我想将表name1都一列多行的数据转换成一行数据,但语句总是出错
在sqlserver中如何我想将表name1都一列多行的数据转换成一行数据,但语句总是出错我写的语句在图二中,要转换成图二语句下面的一行数据...
在sql server中如何我想将表name1都一列多行的数据转换成一行数据,但语句总是出错我写的语句在图二中,要转换成图二语句下面的一行数据
展开
2个回答
展开全部
SELECT STUFF(( SELECT ',' + NAME_1
FROM name1
FOR
XML PATH('')
), 1, 1, '')
更多追问追答
追问
总是出错 xml 不符
追答
详细的错误是什么?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
DECLARE @TSET TABLE (name1 VARCHAR(8));
INSERT INTO @TSET (name1)
VALUES ('123');
INSERT INTO @TSET (name1)
VALUES ('456');
INSERT INTO @TSET (name1)
VALUES ('abc');
--
-- SELECT * FROM @TSET;
--
DECLARE @Result VARCHAR(64);
SELECT @Result=ISNULL(@Result,'')+','+name1
FROM @TSET;
SET @Result=STUFF(@Result,1,1,'');
SELECT @Result;
追问
不懂你什么意思
追答
我只是给出了一个例子,怎样把列转为以逗号分隔的一个字符串,供参考。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询