You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@spark.apache.org by "Takeshi Yamamuro (Jira)" <ji...@apache.org> on 2019/11/01 05:43:00 UTC

[jira] [Updated] (SPARK-29698) Support grouping function with multiple arguments

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

Takeshi Yamamuro updated SPARK-29698:
-------------------------------------
    Description: 
In PgSQL, grouping() can have multiple arguments, but Spark grouping() must have a single argument ([https://github.com/apache/spark/blob/master/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/grouping.scala#L100]);
{code:java}
postgres=# select a, b, grouping(a, b), sum(v), count(*), max(v)
postgres-#   from gstest1 group by rollup (a,b);
 a | b | grouping | sum | count | max 
---+---+----------+-----+-------+-----
   |   |        3 |     |     0 |    
(1 row)
{code}
See a doc for the form: https://www.postgresql.org/docs/12/functions-aggregate.html (Table 9.59. Grouping Operations)

  was:
In PgSQL, grouping() can have multiple arguments, but Spark grouping() must have a single argument ([https://github.com/apache/spark/blob/master/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/grouping.scala#L100]);
{code:java}
postgres=# select a, b, grouping(a, b), sum(v), count(*), max(v)
postgres-#   from gstest1 group by rollup (a,b);
 a | b | grouping | sum | count | max 
---+---+----------+-----+-------+-----
   |   |        3 |     |     0 |    
(1 row)
{code}


> Support grouping function with multiple arguments
> -------------------------------------------------
>
>                 Key: SPARK-29698
>                 URL: https://issues.apache.org/jira/browse/SPARK-29698
>             Project: Spark
>          Issue Type: Sub-task
>          Components: SQL
>    Affects Versions: 3.0.0
>            Reporter: Takeshi Yamamuro
>            Priority: Major
>
> In PgSQL, grouping() can have multiple arguments, but Spark grouping() must have a single argument ([https://github.com/apache/spark/blob/master/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/grouping.scala#L100]);
> {code:java}
> postgres=# select a, b, grouping(a, b), sum(v), count(*), max(v)
> postgres-#   from gstest1 group by rollup (a,b);
>  a | b | grouping | sum | count | max 
> ---+---+----------+-----+-------+-----
>    |   |        3 |     |     0 |    
> (1 row)
> {code}
> See a doc for the form: https://www.postgresql.org/docs/12/functions-aggregate.html (Table 9.59. Grouping Operations)



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@spark.apache.org
For additional commands, e-mail: issues-help@spark.apache.org