我想获取所有与单词匹配的文档:“水果”字段中的“苹果”,“橘子”和“菠萝”。所以基本上我想要这样的东西:
{
"query":{
"bool":{
"must": [
{
"match": {
"fruits": ["Apples","Oranges","Pineapples"]
}
}
]
}
}
}
我该如何通过一个简单的技巧来完成此任务?
最佳答案
您可以使用“条款”代替“匹配”来获取文档
{
"query": {
"terms": {
"fruits": [
"apples",
"oranges",
"pineapples"
]
}
}
}
注意:您应该小写值,因为“术语”查询会找到完全匹配的内容,并且如果未使用分析器,elasticsearch将使用默认分析器(标准分析器)在索引文本值时将文本值小写,然后再对其进行索引
关于elasticsearch - 匹配多个值的字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45023039/