我有以下 XML 结构,需要获取值
<VALUE><![CDATA[PRUEBAS BPM]]></VALUE>
我需要检查两个条件:
- 到达节点 FIELD[NAME="dependency"]
- 前往FIELD[NAME="name"]
我的XPATH其实是这样写的
/TRAIL/ENTITY/FIELD[NAME="dependency"]/ENTITY/FIELD[NAME="name"]/PRIMITIVE/VALUE/text()
但是,它不会带来任何数据。我的 XPATH 是否以某种方式写错了?如何在我的 xml 中整理出对该信息的访问权限?
任何帮助将不胜感激。
这是我的 XML 结构
<TRAIL>
<ENTITY>
<FIELD>
<NAME>dependency</NAME>
<ENTITY>
<FIELD>
<NAME>codigo</NAME>
<PRIMITIVE>
<VALUE><![CDATA[906]]></VALUE>
</PRIMITIVE>
</FIELD>
<FIELD>
<NAME>name</NAME>
<PRIMITIVE>
<VALUE><![CDATA[PRUEBAS BPM]]></VALUE>
</PRIMITIVE>
</FIELD>
</ENTITY>
</FIELD>
</ENTITY>
</TRAIL>
在此先感谢您的帮助!
另外,我必须补充一点,我正在使用此 XPATH 直接从数据库中检索信息。这是我的 SQL 语句(delta 是包含 XML 的表的列)
SELECT XPATH('(/TRAIL/ENTITY/FIELD[NAME="dependency"]/ENTITY/FIELD[NAME="name"])/PRIMITIVE/VALUE/text()', CAST( SUBSTRING( delta FROM position('<TRAIL>' IN delta) FOR char_length(delta)) AS ml ) ) FROM aud_huella_expediente