1

我有一个带有 xmltype 的表,我需要能够使用 XPath 进行查询。当我包含涉及 Xpath Rails 的 where 子句条件时,不会返回任何行。当我从 Rails 复制生成的查询日志并独立执行它时,它确实返回了预期的行。

SELECT * FROM my_table tab WHERE ( tab.myxml.existsnode('//MyNode')  = 1

代码:

select("tab.myxml.getclobval() myxml").
from("my_table tab").
where("tab.myxml.existsnode(:xp) = 1", :xp=>"//MyNode")
4

1 回答 1

1

不知道为什么,但是当我在 existsnode 中指定“!= 0”而不是“= 1”时它可以工作:

select("tab.myxml.getclobval() myxml").
from("my_table tab").
where("tab.myxml.existsnode(:xp) != 0", :xp=>"//MyNode")
于 2013-07-22T22:44:40.913 回答