私は 'must'と 'must_not'機能のboolクエリを使用しています。私は3レベルの深さのプロパティになるまで期待どおりに動作します。例えば弾性検索| Boolクエリ
GET city/town/_search
{
"query": {
"match": {
"contact.residence.address": "Rocky Road"
}
}
}
作品だけで罰金とのような簡単な試合クエリが...結果を返しますが、私は..ブールクエリのように
GET city/town/_search
{
"query": {
"bool": {
"must": [
{
"term": {
"contact.residence.address": "Rocky Road"
}
}
]
}
}
}
リターンNO結果を同じことを行う場合。どうしてこれなの?????
GET city/town/_search
{
"query": {
"bool": {
"must": [
{
"term": {
"store.name": "Hendersons"
}
}
]
}
}
}
などの他のboolクエリを念頭に置いてください。それは3レベルの深さしかないので、prop1.prop3.prop3という用語を検索します。
を使用する必要があります。 'text'型でマップされます。そうであれば、2回目のクエリで 'term'を' match'と置き換えると、期待どおりに動作します。なぜ、用語クエリが私の文書と一致しないのですかというセクションを読むことをお勧めします。公式の文書[here](https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-term-query.html#query-dsl-term-query)にあります。 – avr