以下を考慮してください。ストップフィールドはタイムスタンプフィールドです。ElasticSearch 5. *、問い合わせ先:フィールドが存在しないか、存在する値がこの値である必要がある場合
私は条件以下でデータをフィルタする:
- 停止フィールドが
- を存在しないか、停止フィールドの値は、私が知っている> =今
ありません、私はmust_notを使用していますが、できないはずです方法を見つけ出す。
私は子供のタイプについていくつかのスコアリングを行い、このスコアを使って親を並べ替え、次にストップフィールドを使用して親をフィルタリングします。フィールドが存在しないことをフィルタリングするために
"bool":
{ "should":[
{ "range":
{ "stop":
{ "gte": "now" }
}
},
{ "query":
{ "exists" :
{ "field" : "stop" }
}
}
] }
私は、以下のフィルタを使用しても望ましい結果を得ていますが、まだ何かを探しています。 "{bool"} {{"should_not":{{"存在する":{{" "field": "stop"}}}}}]} –
あなたのコメントのクエリは、あなたが必要とするものとまったく同じです。 '' minimum_should_match ":1'を追加する必要もあります – Val