Browse Source

SQL: [Docs] Add limitation for aggregate functions on scalars (#38186)

Currently aggregate functions can operate only directly on fields.
They cannot be used on top of scalar functions as painless scripting
is currently not supported.
Marios Trivyzas 6 years ago
parent
commit
19dccf8f3e
1 changed files with 7 additions and 1 deletions
  1. 7 1
      docs/reference/sql/limitations.asciidoc

+ 7 - 1
docs/reference/sql/limitations.asciidoc

@@ -70,6 +70,12 @@ When doing aggregations (`GROUP BY`) {es-sql} relies on {es}'s `composite` aggre
 But this type of aggregation does come with a limitation: sorting can only be applied on the key used for the aggregation's buckets. This
 means that queries like `SELECT * FROM test GROUP BY age ORDER BY COUNT(*)` are not possible.
 
+[float]
+=== Using aggregation functions on top of scalar functions
+
+Aggregation functions like <<sql-functions-aggs-min,`MIN`>>, <<sql-functions-aggs-max,`MAX`>>, etc. can only be used
+directly on fields, and so queries like `SELECT MAX(abs(age)) FROM test` are not possible.
+
 [float]
 === Using a sub-select
 
@@ -92,7 +98,7 @@ But, if the sub-select would include a `GROUP BY` or `HAVING` or the enclosing `
 FROM (SELECT ...) WHERE [simple_condition]`, this is currently **un-supported**.
 
 [float]
-=== Use <<sql-functions-aggs-first, `FIRST`>>/<<sql-functions-aggs-last,`LAST`>> aggregation functions in `HAVING` clause
+=== Using <<sql-functions-aggs-first, `FIRST`>>/<<sql-functions-aggs-last,`LAST`>> aggregation functions in `HAVING` clause
 
 Using `FIRST` and `LAST` in the `HAVING` clause is not supported. The same applies to
 <<sql-functions-aggs-min,`MIN`>> and <<sql-functions-aggs-max,`MAX`>> when their target column