我需要关于xQuery语法的帮助。使用xQuery检索带有xml列条件的表记录
我有一个与SQLType xml列declarde的表。
My table 我想创建一个SQL查询,使用XQuery,检索在XML包含任何元素表中的记录,在XPath,它的属性parameterCode =“一个特定的字符串”
的XPath是:LoggedProductInfo/LoggedParameterInfo/LoggedDiagnosticObject/DiagnosticObject/TEA2Plus/@ parameterCode
XML是复杂的,包含序列,选择等 My schema
我在SQL相当不错的,但是当它来到xQuery我迷路了,所以我希望能得到任何帮助。
从评论
如果我使用
select a.ReadingId ,
a.message_xml.exist('LoggedProductInfo/LoggedParameterInfo/LoggedDiagnosticObject/DiagnosticObject/TEA2Plus[@parameterCode = "P1ASV"]')
AS parameterCodeExists
from MyTable a
返回的值列parameterCodeExists为0,即使我知道有这样一个parameterCode。
flag
如果我从XML复制的XPath我有以下几点:
/lpi:LoggedProductInfo/lpi:LoggedParameterInfo/lpi:LoggedDiagnosticObject[1]/lpi:DiagnosticObject/lpi:TEA2Plus/@parameterCode
可以是些很特别的一个需要做的原因在于LPI:LoggedDiagnosticObject 1是一个列表?
https://stackoverflow.com/help/mcve – Hogan
没有表现出我们的实际(减少!)XML你不会得到帮助。在查询之前,用'WITH XMLNAMESPACES'('DEFAULT'lpi'')来说明就足够了。 – Shnugo