我正在使用弹性搜索版本2.x。我有两个记录被索引为:弹性搜索排序和排名
- 卫生间的墙面瓷砖(如“昵称”索引的文档列)
- 瓷砖墙浴室(如“昵称”索引的文档列)
当我试图搜索短语“瓷砖墙浴室”理想情况下,第二个应该先出现,因为这是完全匹配,之后将首先出现,因为所有3个单词匹配(瓷砖,墙壁和浴室)。
我把排序在我的查询基于列。下面是我的弹性搜索查询:
{
"query" : {
"filtered" : {
"query" : {
"query_string": {
"query": "*tile wall bathroom*",
"fields": [
"nickname",
"comments",
"category_name",
"subcategory_name",
"document_name",
"web_links",
"document_extension",
"property_name",
"document_content"
],
"analyze_wildcard": true
}
},
"filter" : {
"and" : [
{"term" : {"property_id" : "6"}}
]
}
}
},
"size": 10,
"sort": ["nickname", "comments", "web_links", "document_name"]
}
在此先感谢!
谢谢多米尼克。你可以写我询问你的解释。我试图首先放置“_scrore”字段,但它显示相同的结果。 –
感谢Chocomesli。但是这个查询根本不起作用。 –
您是否尝试了Explain-API? – chocomuesli