我正在使用弹性搜索版本 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"]
}
提前致谢!!!