[
https://issues.apache.org/jira/browse/CALCITE-5283?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Julian Hyde updated CALCITE-5283:
---------------------------------
Description:
Add ARG_MIN, ARG_MAX (aka MIN_BY, MAX_BY) aggregate functions.
For example, the following query prints the name of the lowest paid employee in
each department:
{code:java}
SELECT deptno, ARG_MIN(sal, ename)
FROM emp
GROUP BY deptno;
+------------+------------+
| deptno | _c1 |
+------------+------------+
| 10 | MILLER |
| 20 | SMITH |
| 30 | JAMES |
+------------+------------+
{code}
If multiple employees have the same salary, arbitrarily chooses one to return.
See [Yandex description of
ARG_MIN|https://cloud.yandex.com/en/docs/datalens/function-ref/ARG_MIN]. Also
implemented in Alibaba MaxCompute, Clickhouse, DuckDB. (And in Alibaba
MaxCompute, Spark SQL, Firebolt, PrestoDB, Trino as MIN_BY/MAX_BY.)
was:
Add ARG_MIN, ARG_MAX (aka MIN_BY, MAX_BY) aggregate functions.
For example, the following query prints the name of the lowest paid employee in
each department:
{code}
SELECT deptno, ARG_MIN(sal, ename)
FROM emp
GROUP BY deptno;
+------------+------------+
| deptno | _c1 |
+------------+------------+
| 10 | MILLER |
| 20 | SMITH |
| 30 | JAMES |
+------------+------------+
{code}
If multiple employees have the same salary, arbitrarily chooses one to return.
See [Yandex description of
ARG_MIN|https://cloud.yandex.com/en/docs/datalens/function-ref/ARG_MIN]. Also
implemented in Kusto, Alibaba MaxCompute, Clickhouse, DuckDB.
> Add ARG_MIN, ARG_MAX (aka MIN_BY, MAX_BY) aggregate functions
> -------------------------------------------------------------
>
> Key: CALCITE-5283
> URL: https://issues.apache.org/jira/browse/CALCITE-5283
> Project: Calcite
> Issue Type: Bug
> Reporter: Julian Hyde
> Priority: Major
>
> Add ARG_MIN, ARG_MAX (aka MIN_BY, MAX_BY) aggregate functions.
> For example, the following query prints the name of the lowest paid employee
> in each department:
> {code:java}
> SELECT deptno, ARG_MIN(sal, ename)
> FROM emp
> GROUP BY deptno;
> +------------+------------+
> | deptno | _c1 |
> +------------+------------+
> | 10 | MILLER |
> | 20 | SMITH |
> | 30 | JAMES |
> +------------+------------+
> {code}
> If multiple employees have the same salary, arbitrarily chooses one to return.
> See [Yandex description of
> ARG_MIN|https://cloud.yandex.com/en/docs/datalens/function-ref/ARG_MIN]. Also
> implemented in Alibaba MaxCompute, Clickhouse, DuckDB. (And in Alibaba
> MaxCompute, Spark SQL, Firebolt, PrestoDB, Trino as MIN_BY/MAX_BY.)
--
This message was sent by Atlassian Jira
(v8.20.10#820010)