たとえば、「空」などの文字列が「キー」範囲内にある一致するドキュメントを見つける必要があります。個別の一致クエリと範囲クエリを作成すると、ES から出力が得られますが、マージすると例外がスローされます。
範囲クエリ:
res = es.search(index="dummy",
body={"from":0, "size":0,"query": {"range":{"key":{"gte":"1000"}}}})
一致クエリ:
res = es.search(index="dummy",
body={"from":0, "size":0,"query": {"match":{"word":"sky"}}})
複合クエリ:
res = es.search(index="dummy",
body={
"from":0,
"size":0,
"query": {
"range":{
"key":{"gte":"1000"}
}
},
"match":{"word":"sky"}
})
結合されたクエリを実行すると、次のエラーがスローされます。
raise HTTP_EXCEPTIONS.get(status_code, TransportError)(status_code, error_message, additional_info) elasticsearch.exceptions.RequestError: TransportError(400, u'parsing_exception', u'Unknown key for a START_OBJECT in [match].')
両方のクエリをマージする正しい方法は何ですか?