Python Elasticsearch - 在多个字段中查找精确匹配
Python Elasticsearch - Look in multiple fields for exact match
我有两个字段 field_1
和 field_2
。我必须在 field_1
或 field_2
中找到与我的查询完全匹配的内容。 multi_match
没有给我完全匹配。而constant_score
不支持multi_match
.
我使用的elasticsearch版本:
Version: 6.3.0, Build: default/rpm/424e937/2018-06-11T23:38:03.357887Z, JVM: 1.8.0_171
在大量阅读文档并尝试不同的查询之后,这对我有用:
query = {
"query" : {
"constant_score" : {
"filter" : {
"bool" : {
"should" : [
{ "term" : {"field_1" : "<search query>"}},
{ "term" : {"field_2" : "<search query>"}}
]
}
}
}
}
}
我有两个字段 field_1
和 field_2
。我必须在 field_1
或 field_2
中找到与我的查询完全匹配的内容。 multi_match
没有给我完全匹配。而constant_score
不支持multi_match
.
我使用的elasticsearch版本:
Version: 6.3.0, Build: default/rpm/424e937/2018-06-11T23:38:03.357887Z, JVM: 1.8.0_171
在大量阅读文档并尝试不同的查询之后,这对我有用:
query = {
"query" : {
"constant_score" : {
"filter" : {
"bool" : {
"should" : [
{ "term" : {"field_1" : "<search query>"}},
{ "term" : {"field_2" : "<search query>"}}
]
}
}
}
}
}