我对该范围,文本和排序的查询。当我使用范围与种类或文字与排序它的工作原理,但是当我尝试使用所有这三个在一起,它抛出一个错误:ElasticSearch查询问题
“解析失败:无法解析源”
我不知道为什么它不工作的错误不是很清楚。我使用jsonlint.com检查了JSON并且它是有效的。我不能使用文本和范围查询的组合吗?
{
"query" : {
"text" : {
"Content" : "fight"
},
"range" : {
"UpdateTime" : {
"from" : "20120601T000000",
"to" : "20120630T235959"
}
}
},
"sort" : [{ "UpdateTime" : {"order" : "desc"} }]
}
将日期用作过滤器似乎在阅读后更有意义。如果我没有错,在日期和条件以及bool值的情况下,使用过滤器比查询更快? – Gabbar 2012-07-18 15:22:00
它可能会更快。筛选器不参与评分(这可能与您的情况无关,因为您按日期排序)并将其缓存。如果您在几次查询中重复使用此过滤器,可能会有所帮助。 – imotov 2012-07-18 16:24:24