下面是示例查询。matches
中的运算符是什么意思?我找不到任何有关此特定场景的文档。
{
"bool": {
"should": [
{
"match": {
"lastName": {
"query": "John",
"fuzziness": "AUTO",
"operator": "AND",
"prefix_length": "1"
}
}
},
{
"match": {
"name": {
"query": "John Doe",
"operator": "OR"
}
}
},
{
"match": {
"name.raw": {
"query": "John Doe",
"boost": 5.0,
"operator": "AND"
}
}
},
{
"match": {
"lastName": {
"query": "Doe",
"fuzziness": "AUTO",
"operator": "AND",
"prefix_length": "1"
}
}
}
]
}
}
2条答案
按热度按时间rdlzhqv91#
有关于Match Query中运算符的文档。
文件:
operator(可选,字符串)用于解释查询值中的文本的布尔逻辑。有效值为:
OR(默认值)例如,查询值capital of Hungary将被解释为OR匈牙利的大写OR。
例如,查询值capital of Hungary被解释为AND匈牙利的capital AND。
dba5bblo2#
如documentation中所写,
operator
是一个用于解释
query
值中的文本的布尔逻辑。在您的示例中,您的
query
是John Doe
。使用AND
运算符,查询将被解释为John AND Doe
。而使用OR
运算符(默认情况下使用),它将被解释为John OR Doe
。operator
s在match query中用于表示逻辑条件。请不要将其与boolean query中的 *typed occurences * 混淆,后者有4次出现(“operator”):must
、filter
、should
和must_not
。