You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "Tanner Clary (Jira)" <ji...@apache.org> on 2023/05/16 20:44:00 UTC

[jira] [Updated] (CALCITE-5564) Support 2-argument PERCENTILE_CONT, PERCENTILE_DISC aggregate functions (as in BigQuery)

     [ https://issues.apache.org/jira/browse/CALCITE-5564?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Tanner Clary updated CALCITE-5564:
----------------------------------
    Description: 
Calcite currently has implementations for the {{PERCENTILE_CONT}} and {{PERCENTILE_DISC}} functions. Their syntax may be found [here|https://learn.microsoft.com/en-us/sql/t-sql/functions/percentile-cont-transact-sql?view=sql-server-ver16]. 

BigQuery offers these functions as well, but the syntax is slightly different, and may be found [here|https://cloud.google.com/bigquery/docs/reference/standard-sql/functions-and-operators#percentile_cont]. The main difference is that instead of using a {{WITHIN GROUP}} clause, the array is passed in directly as the first argument to the function.

BigQuery Syntax Example: {{SELECT PERCENTILE_CONT(x, .5) OVER() FROM UNNEST([1,2,3,4]) as x;}} would return the median, 2.5.

Standard Syntax Example: {{SELECT PERCENTILE_CONT(.5) WITHIN GROUP (ORDER BY [some column])}}

Parsing and validation for the standard functions was added in CALCITE-4644.

The actual implementation for both the standard and BigQuery forms is covered under CALCITE-4666.

  was:
Calcite currently has implementations for the {{PERCENTILE_CONT}} and {{PERCENTILE_DISC}} functions. Their syntax may be found [here|https://learn.microsoft.com/en-us/sql/t-sql/functions/percentile-cont-transact-sql?view=sql-server-ver16]. 

BigQuery offers these functions as well, but the syntax is slightly different, and may be found [here|https://cloud.google.com/bigquery/docs/reference/standard-sql/functions-and-operators#percentile_cont]. The main difference is that instead of using a {{WITHIN GROUP}} clause, the array is passed in directly as the first argument to the function.


> Support 2-argument PERCENTILE_CONT, PERCENTILE_DISC aggregate functions (as in BigQuery)
> ----------------------------------------------------------------------------------------
>
>                 Key: CALCITE-5564
>                 URL: https://issues.apache.org/jira/browse/CALCITE-5564
>             Project: Calcite
>          Issue Type: Improvement
>            Reporter: Tanner Clary
>            Assignee: Tanner Clary
>            Priority: Major
>
> Calcite currently has implementations for the {{PERCENTILE_CONT}} and {{PERCENTILE_DISC}} functions. Their syntax may be found [here|https://learn.microsoft.com/en-us/sql/t-sql/functions/percentile-cont-transact-sql?view=sql-server-ver16]. 
> BigQuery offers these functions as well, but the syntax is slightly different, and may be found [here|https://cloud.google.com/bigquery/docs/reference/standard-sql/functions-and-operators#percentile_cont]. The main difference is that instead of using a {{WITHIN GROUP}} clause, the array is passed in directly as the first argument to the function.
> BigQuery Syntax Example: {{SELECT PERCENTILE_CONT(x, .5) OVER() FROM UNNEST([1,2,3,4]) as x;}} would return the median, 2.5.
> Standard Syntax Example: {{SELECT PERCENTILE_CONT(.5) WITHIN GROUP (ORDER BY [some column])}}
> Parsing and validation for the standard functions was added in CALCITE-4644.
> The actual implementation for both the standard and BigQuery forms is covered under CALCITE-4666.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)