Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 没有为列错误指定列名称_Sql_Xml - Fatal编程技术网

Sql 没有为列错误指定列名称

Sql 没有为列错误指定列名称,sql,xml,Sql,Xml,我试图从使用XML路径连接的数据中删除尾随逗号 当我将XML路径查询嵌套在左函数查询中时,会出现各种各样的错误 它给了我 不正确的语法错误“嵌套”) 指向[tb]前面的结束括号 当我使用alias进行内部查询时,它会 未指定任何列 这是我的问题 select LEFT(tb.col1, LEN(tb.col1) - 2) from (select col1 + ', ' from tabSample where

我试图从使用XML路径连接的数据中删除尾随逗号

当我将XML路径查询嵌套在左函数查询中时,会出现各种各样的错误

它给了我

不正确的语法错误“嵌套”)

指向[tb]前面的结束括号

当我使用alias进行内部查询时,它会

未指定任何列

这是我的问题

select 
    LEFT(tb.col1, LEN(tb.col1) - 2)
from 
    (select 
        col1 + ', '
     from 
        tabSample 
     where 
        tabId = XXXX
     For XMl Path('') ) [tb]
任何帮助都将不胜感激

谢谢

在值前面添加逗号,然后使用
STUFF
函数删除第一个逗号。上面的示例只处理前面的逗号问题


您可能还需要查看整个查询。

谢谢您的回答。但我仍然得到“未指定列名错误”:(粘贴您使用的整个查询。这里的意思是没有指定列,因为您将此XML查询用作内部查询,并且当使用此语法时,您的内部查询必须为从查询库返回的每个列都有一个列名。使用表名添加columnName起作用。谢谢,这不是问题,很高兴它能帮助您现在接受答案:)
select STUFF((select  ', ' + col1 
              from tabSample 
              where tabId = XXXX
              For XMl Path(''),TYPE).
              value('.','NVARCHAR(MAX)'),1,2,'')