1
我已经有弹性搜索文档和这样的映射。是否可以通过该字段是否符合条件来对elasticsearch查询进行排序?
{
"date_added": {
"type": "date",
"format": "dateOptionalTime"
}
"expires": {
"type": "date",
"format": "dateOptionalTime"
}
}
我想要做的就是查询双排序:
1)最新到最旧(这是一个简单的排序,在这里没问题)
2)显示文件尚未在最前面到期(所以文件的“过期”比现在更大)
在我的回应中,我希望将文档分为两部分 - 尚未过期的最新到最旧,过期的最新到最旧。
我很努力地创造出可以实现第二部分的排序。我可以按范围过滤器的结果排序吗?也许我可以创建一些属性类似的布尔型字段,它会根据“expires”字段而改变,然后用它进行排序?
这很漂亮。我担心的一件事是它会如何影响我搜索的总体评分(给出的例子非常简单)。我将阅读提供的链接并检查其工作原理。 尽管如何对它进行排序呢?不会将排序与date_sort混为一谈(因为结果之间的分数可能会有所不同)? – user3146472
这不会与排序工作。排序会超过分数并自行排序。如果您想根据辅助字段进行排序,那么您可以在那里再添加一个功能。 –