“XQuery [nodes()]:不支持XQuery语法'union'。”

时间:2016-06-06 14:53:06

标签: sql-server xml xquery

使用以下代码,我收到以下错误:

  

XQuery [nodes()]:不支持XQuery语法“union”。

DECLARE @input XML =(我正在尝试为此字符串键入完整的XML,但它不会在此处进行翻译(被截断)。如果我选​​择它的部分,它甚至会截断。我知道回答这个问题的关键是问题,但也许有人可以解释错误,我可以调查这个变量字符串)??

CREATE TABLE #Fields 
(F1RowID int identity(1,1),GroupID int,TableID int,FieldName nvarchar(50)
,FieldValue nvarchar(50),OldFieldValue nvarchar(50),ExcludeField bit)

INSERT INTO #Fields (FieldName,FieldValue,TableID,ExcludeField) 
SELECT FieldName = C.value('local-name(.)', 'varchar(50)'),   
FieldValue = C.value('(.)[1]', 'varchar(50)')    ,
TableID = 1,ExcludeField = 0 FROM @input.nodes
('/data/CSNPay|CSNHistoryGroup/CSNPay|CSNHistory/*') AS T(C)

1 个答案:

答案 0 :(得分:2)

SQL Server不支持XQuery的联合运算符tf.Session。如果各个子查询没有返回重叠结果,那么您实际上并不需要基于集合的union-capability:只需将序列组合在一起即可。否则,你将不得不处理重复。

config = tf.ConfigProto(
        device_count = {'GPU': 0}
    )
sess = tf.Session(config=config)

我不确定这个查询是否实际上正在按照您的预期行事 - 你确定各个路径(一些从根开始,一些从当前上下文开始)?