elasticsearch-sql icon indicating copy to clipboard operation
elasticsearch-sql copied to clipboard

group by and having not working

Open bigdatalyze opened this issue 6 years ago • 8 comments

select count(replyHistory.id),session_id from engine nested(replyHistory.raw.keyword) in ('Abc','abc','ABC') group by session_id having count(replyHistory.id) > 2

{"error":{"root_cause":[{"type":"parser_exception","reason":"not support token:IDENTIFIER"}],"type":"parser_exception","reason":"not support token:IDENTIFIER"},"status":500}

bigdatalyze avatar Jun 09 '18 19:06 bigdatalyze

Sorry, having isn't supported!

shi-yuan avatar Jun 11 '18 02:06 shi-yuan

i have a solution to use having in elastisearch. but who can convert this code into elastic SQL Plugin format? answer link

mhsankar avatar Nov 10 '18 09:11 mhsankar

yeah,bucket_selector not supported now

shi-yuan avatar Nov 10 '18 14:11 shi-yuan

when do you think add bucket_selector in SQL Plugin?

mhsankar avatar Nov 10 '18 14:11 mhsankar

什么时候 可以支持 bucket_selector?

ibc789 avatar Nov 20 '18 08:11 ibc789

when can we expect support for bucket_selector in SQL Plugin or Having?

palbiplab avatar Jan 11 '19 12:01 palbiplab

I really don’t know the exact date yet~

shi-yuan avatar Jan 14 '19 02:01 shi-yuan

select count(age) as ageCnt, avg(age) as ageAvg from bank group by gender having ageAvg >= 4 and ageCnt >= 5 order by ageCnt desc
{
  "from": 0,
  "size": 0,
  "_source": {
    "includes": [
      "COUNT",
      "AVG"
    ],
    "excludes": []
  },
  "aggregations": {
    "gender": {
      "terms": {
        "field": "gender",
        "size": 1000,
        "shard_size": 20000,
        "min_doc_count": 1,
        "shard_min_doc_count": 0,
        "show_term_doc_count_error": false,
        "order": [
          {
            "ageCnt": "desc"
          },
          {
            "_key": "asc"
          }
        ]
      },
      "aggregations": {
        "ageCnt": {
          "value_count": {
            "field": "age"
          }
        },
        "ageAvg": {
          "avg": {
            "field": "age"
          }
        },
        "having": {
          "bucket_selector": {
            "buckets_path": {
              "ageAvg": "ageAvg",
              "ageCnt": "ageCnt"
            },
            "script": {
              "source": "params.ageAvg >= 4\n&& params.ageCnt >= 5",
              "lang": "painless"
            },
            "gap_policy": "skip"
          }
        }
      }
    }
  }
}

shi-yuan avatar May 29 '21 11:05 shi-yuan