ElasticSearch에서 문제가 발생했습니다.ElasticSearch : 필터링 된 고유 레코드에 대한 집계
필터링 된 데이터 세트에서 고유 한 문서를 가져 와서 그 위에 집계를 수행하려고합니다.
우리의 데이타 세트는 다음과 같이 보인다 .. ID 객체 속성 1 Property2 12 123 Test1을 Fest2 23 234 테스트 3 Fest4 5 123 Test1을 Fest2 55 123 Test2를 Fest4 3 234 Test2를 Fest2
I을 property2를 기반으로 장치를 필터링하고 고유 한 필터링 된 레코드의 property1을 집계 (그룹화) 할 수 있습니다. 누군가 나를 도와 줄 수 있습니까?
고유 한 레코드 필터링 및 가져 오기.
{
"size": 0,
"query": { "match": { "Property2": "Fest2" }},
"aggs": {
"Unique-Object": {
"terms": {
"field": "object.keyword",
"size": 20
},
"aggs": {
"top_uids_hits": {
"top_hits": {
"sort": [
{
"_score": {
"order": "desc"
}
}
],
"size": 1
}
}
}
}
}
}'
나는 위의 DSL의 출력에 다음과 같이 속성 1에 의해 그룹에 같은 수 ...이에 수있는 몇 가지 중 하나 개 던져 빛을?
그룹 속성 1
"aggs": {
"Property1_count": {
"terms": {
"field": " Property1.keyword"
}
감사 아룬 S
plz 귀하의 요구 사항에 대한 SQL 쿼리를 만들 수 있습니까, 그래서 당신의 질문은 명확 할 것입니까? . –
감사합니다. 원시 SQL 쿼리는 이와 같은 것입니다. 선택 테이블 (IDTINCT id)에서 Select2 where Property2 = 'xxx'group by property1 – Manoj
내 대답이 업데이트되었습니다. ID와 속성 1에서 두 그룹을 사용해야한다고 생각합니다. 테스트 데이터를 확인하십시오. 나는 내 시스템에서 테스트했다. –