XCC如何在MarkLogic中搜索符合一定范围条件的节点(文档)
How to search nodes (documents) matching with a range of conditions in MarkLogic by XCC
我是MarkLogic的新手,所以请帮我找到解决方案。
我的XML数据被导入到MarkLogic中,我想使用XCC查找具有特定范围条件的文档(节点)。
我在 运行 下面搜索命令,但得到一个错误。
请告诉我我做错了什么并告诉我解决方案。
谢谢。
cts:search(fn:doc(),
cts:and-query(cts:element-range-query(xs:QName("RequestDatetime"), ">=", "20141102170000"),
cts:element-range-query(xs:QName("RequestDatetime"), "<=", "20141103170000"))
错误内容为
[1.0-ml] XDMP-UNEXPECTED: (err:XPST0003) Unexpected token syntax error, unexpected UnterminatedComment_, expecting Function30_ or Percent_
你好 wst 和其他人
我尝试创建元素范围索引,但它似乎不起作用。
我的数据包含许多 XML 文件,格式如下。
现在,如果我想搜索 RequestDatetime 元素的范围,我必须做什么?
谢谢
<?xml version="1.0" encoding="UTF-8"?>
<Request>
<RequestDatetime>
20141102174108
</RequestDatetime>
<RemoteHostName>
xxxx.xxxx.xxxx.xxxx
</RemoteHostName>
<OrgRequest>
GET http://xxxx/ HTTP/1.1
</OrgRequest>
<Protocol>
xxxx
</Protocol>
<WebServer>
xxxxxxxxx
</WebServer>
<Request>
xxxxxxxxxxx
</Request>
<StatusCode>
xxxxxxx
</StatusCode>
<BytesSent>
Xxxxxxxxxx
</BytesSent>
<UserAgent>
</UserAgent>
<RemoteLogName>
</RemoteLogName>
<Cookie>
</Cookie>
<Referer>
</Referer>
<UserName>
</UserName>
</Request>
传给cts:and-query
的cts:queries
是一个序列,所以需要用括号括起来(不像fn:concat()
):
cts:search(fn:doc(),
cts:and-query((
cts:element-range-query(xs:QName("RequestDatetime"), ">=", "20141102170000"),
cts:element-range-query(xs:QName("RequestDatetime"), "<=", "20141103170000")
))
)
我是MarkLogic的新手,所以请帮我找到解决方案。
我的XML数据被导入到MarkLogic中,我想使用XCC查找具有特定范围条件的文档(节点)。 我在 运行 下面搜索命令,但得到一个错误。 请告诉我我做错了什么并告诉我解决方案。 谢谢。
cts:search(fn:doc(),
cts:and-query(cts:element-range-query(xs:QName("RequestDatetime"), ">=", "20141102170000"),
cts:element-range-query(xs:QName("RequestDatetime"), "<=", "20141103170000"))
错误内容为
[1.0-ml] XDMP-UNEXPECTED: (err:XPST0003) Unexpected token syntax error, unexpected UnterminatedComment_, expecting Function30_ or Percent_
你好 wst 和其他人
我尝试创建元素范围索引,但它似乎不起作用。 我的数据包含许多 XML 文件,格式如下。 现在,如果我想搜索 RequestDatetime 元素的范围,我必须做什么?
谢谢
<?xml version="1.0" encoding="UTF-8"?>
<Request>
<RequestDatetime>
20141102174108
</RequestDatetime>
<RemoteHostName>
xxxx.xxxx.xxxx.xxxx
</RemoteHostName>
<OrgRequest>
GET http://xxxx/ HTTP/1.1
</OrgRequest>
<Protocol>
xxxx
</Protocol>
<WebServer>
xxxxxxxxx
</WebServer>
<Request>
xxxxxxxxxxx
</Request>
<StatusCode>
xxxxxxx
</StatusCode>
<BytesSent>
Xxxxxxxxxx
</BytesSent>
<UserAgent>
</UserAgent>
<RemoteLogName>
</RemoteLogName>
<Cookie>
</Cookie>
<Referer>
</Referer>
<UserName>
</UserName>
</Request>
传给cts:and-query
的cts:queries
是一个序列,所以需要用括号括起来(不像fn:concat()
):
cts:search(fn:doc(),
cts:and-query((
cts:element-range-query(xs:QName("RequestDatetime"), ">=", "20141102170000"),
cts:element-range-query(xs:QName("RequestDatetime"), "<=", "20141103170000")
))
)