我有一个报告要求,除了一些 XPath 表达式之外,查询将完全相同,具体取决于where子句中需要过滤的列。
其中$ record / firstName eq $ firstName
VS
其中$ record / lastName eq $ lastName
如何使用动态 XPath ,以便我可以为两者使用相同的代码并将路径作为参数传递?
答案 0 :(得分:2)
听起来你可以在这种情况下使用xdmp:unpath()。
答案 1 :(得分:1)
查询和XPath根本不同:
XPath的一个子集(称为可搜索表达式)可以被视为幕后查询,但在这些情况下XPath没有特别的优势 - 同样的事情可以表示为查询。
将其作为上下文,一种可能性是动态构造查询,嵌套元素或JSON范围(也称为容器)查询来表达路径。那会满足你的要求吗?如果没有,你可以扩展用例吗?
需要注意的一点是:对于精确范围查询,您必须打开位置或执行过滤查询。
希望有帮助,