sql查询列进行STUFF()拼接 单引号 逗号_xml path excel

Posted damon-llj

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql查询列进行STUFF()拼接 单引号 逗号_xml path excel相关的知识,希望对你有一定的参考价值。

有时候查询出的某一列结果要作为其他数据库查询条件,必须要做拼接转换

方法:

SELECT [id] = stuff((SELECT distinct ‘,‘‘‘ + t.id + ‘‘‘‘ FROM table t WHERE t.id = 1 FOR xml path (‘‘)),1,1,‘‘);
方法使用如下:

SELECT [Id] = STUFF((SELECT DISTINCT ‘,‘‘‘ + Ld + ‘‘‘‘ FROM BaseMeterFieldType AS b WHERE b.MeterId IN (SELECT Id FROM BaseTree WHERE CompanyId = ‘071B4795-E124-E711-80EA-C979862AE7CB‘) FOR xml PATH(‘‘)),1,1,‘‘);

执行结果:

技术图片

以上报错是由于id为GUID,且id需要小写,所以需要进行类型转换,方法如下:

SELECT [Id] = STUFF((SELECT DISTINCT ‘,‘‘‘ + CAST(LOWER(b.Id) AS VARCHAR(4000)) + ‘‘‘‘ FROM BaseMeterFieldType AS b WHERE b.MeterId IN (SELECT Id FROM BaseTree WHERE CompanyId = ‘071B4795-E124-E711-80EA-C979862AE7CB‘) FOR xml PATH(‘‘)),1,1,‘‘);

执行结果:

技术图片

 

以上是关于sql查询列进行STUFF()拼接 单引号 逗号_xml path excel的主要内容,如果未能解决你的问题,请参考以下文章

sql查询字符串拼接

SQL Server 查询编辑器打出来的逗号和单引号错误,不知道咋回事,求大神帮助

如何在 php 中为 tsql 字符串转义单引号(ms sql)

SQL Server 行转列,列转行

sql-stuff-for-xml逗号隔开语句

SQL Server2000将一列数据拼接成字符串可以用STUFF FOR XML PATH()么