我正在QBE中寻找日期范围查询。我正在尝试下面的查询示例
https://Server:port/v1/qbe?format=json&pageLength=10&start=1&directory=/json/&options=search_option_advanced_date&query={"$query":{
"$and":[{"creation_date":{"$le":"2018-12-12T05:40:47.496"}},{"creation_date":{"$ge":"2017-12-12T05:40:47.496"}}],"$filtered":true}}
在这里,我在'/ Creation_Date_date'上创建了路径范围索引,并在'Creation_Date_date'上创建了元素范围索引,并且还在持久选项中的search_option_advanced_date文件中添加了以下约束
<constraint name="creation_date">
<range type="xs:date">
<element name="Creation_Date_date"/>
</range>
</constraint>
尽管应该获取结果,但我还是空白了
{
"snippet-format":"snippet",
"total":0,
"start":1,
"page-length": 10,
"selected": "include-with-ancestors",
"results":[],
"facets": {
"EntityType":{"type":"xs:string", "facetValues":[]},
"Category":{"type":"xs:string", "facetValues":[]},
"Genre":{"type":"xs:string", "facetValues":[]},
"creation_date":{"type":"xs:date", "facetValues":[]}
},
"metrics": {
"query-resolution-time":"PT0.016599S",
"facet-resolution-time":"PT0.000578S",
"extract-resolution-time":null, "total-time":"PT0.017743S"
}
}
答案 0 :(得分:1)
要使用持久查询选项,QBE查询必须使用约束属性来指定查询选项:
http://docs.marklogic.com/guide/search-dev/qbe#id_32338
也就是说,如果您使用的是查询选项,则使用组合查询通常会更简单:
http://docs.marklogic.com/guide/rest-dev/search#id_69918
最后,将约束键入为xs:date值,但查询将提供xs:dateTime值。
希望有帮助,