- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已经准备好了这篇文章 https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-multi-match-query.html
但我自己想不出来。
让我们有这两个查询:
首先
GET blablabla/_search
{
"query": {
"multi_match": {
"query": "games usa",
"fields": ["title1", "title2"],
"type": "best_fields"
}
}
}
第二个
get blablabla/_search
{
"query" : {
"multi_match": {
"query": "games usa",
"fields": ["title1", "title2"],
"type": "most_fields"
}
}
}
我认为第一个查询意味着:
get documetns that contain (games) or (usa) or (games and usa) words in either the title1 or the title2 fields.
但是,我不知道第二个是什么意思。
我可以寻求帮助吗?
(我在 elasticsearch 2.2 上)
最佳答案
每当在 Elastic Search
中执行搜索操作时,都会计算每个匹配文档的相关性。根据文档-
The relevance score of each document is represented by a positive floating-point number called the
_score
. The higher the _score, the more relevant the document.
根据你上面提到的例子
GET blablabla/_search
{
"query": {
"multi_match": {
"query": "games usa",
"fields": ["title1", "title2"],
"type": "best_fields"
}
}
}
此查询将在 title1
或 中找到包含
但 games
AND/OR usa
的文档title2_score
将从单个最佳匹配字段计算。例如-
title1
包含 games
并且 title2
在同一文档中包含 games usa
,则 _score
将是 title2
中的那个。best_fields
在您搜索同一字段中最好找到的多个词时最有用。 在 most_fields
中:
GET blablabla/_search
{
"query" : {
"multi_match": {
"query": "games usa",
"fields": ["title1", "title2"],
"type": "most_fields"
}
}
}
此查询将在 title1
或 中找到包含
但 games
AND/OR usa
的文档title2_score
将根据所有字段的组合进行计算。例如-
title1
包含 games
并且 title2
在同一文档中包含 games usa
,则 _score
将是 title1
和 title2
希望对你有帮助
关于elasticsearch best_field 和 most_field 有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35393793/
我已经准备好了这篇文章 https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-multi-match-qu
我是一名优秀的程序员,十分优秀!