您的位置:首页 > 博客中心 > 数据库 >

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

时间:2022-03-15 15:13

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

方法:

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,‘‘);

执行结果:

技术图片

 

热门排行

今日推荐

热门手游