elasticsearch에 다음 sql 쿼리를 추출하고 싶습니다.날짜 범위 데이터와 must_not bool 쿼리를 사용한 Elasticsearch 필터링
Select *
from someTable
Where @timestamp < some_date and @timestamp >= some_other_date
and dst != '-'
그런 다음 반환 된 문서에서 일부 집계를 수행하십시오. 집계 부분은 알아 냈고 완벽하게 작동합니다. 하지만 문서를 제대로 필터링하지 않습니다. 나는 다음과 같은 쿼리를 시도했지만 dst = '-'와 함께 doc을 얻었고, 차례로 집계에서 계산했다.
쿼리
"query": {
"bool": {
"must_not": {
"term": {
"dst": '-'
}
},
"filter":{
"range":{
"@timestamp":{
"gte":"a date",
"lt": "another date"
}
}
}
}
}
내가 뭔가 잘못하고있는 중이 야. 집계를 사용하기 때문에 크기를 0으로 설정합니다 (여기에 표시되지 않음). Elasticsearch ver2.4 및 python elasticsearch 라이브러리. "
당신이 당신의 쿼리를 보내는 방법? 또한'dst' 필드의 매핑 무엇인가? – Val
파이썬 elasticsearch 클라이언트를 통해 쿼리를 전송 집계 쿼리. dst 필드는 analzyed. 그것이 잘못 일 수 있습니까? 쿼리의 논리가 올바른가요? – Apostolos