GitHub user ueshin opened a pull request:

    https://github.com/apache/spark/pull/21982

    [SPARK-23909][SQL] Add aggregate function.

    ## What changes were proposed in this pull request?
    
    This pr adds `aggregate` function which applies a binary operator to an 
initial state and all elements in the array, and reduces this to a single 
state. The final state is converted into the final result by applying a finish 
function.
    
    ```sql
    > SELECT aggregate(array(1, 2, 3), (acc, x) -> acc + x);
     6
    > SELECT aggregate(array(1, 2, 3), (acc, x) -> acc + x, acc -> acc * 10);
     60
    ```
    
    ## How was this patch tested?
    
    Added tests.


You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/ueshin/apache-spark 
issues/SPARK-23911/aggregate

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/spark/pull/21982.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #21982
    
----
commit 26bf37960a1534da8e2119181dce5794e3b48172
Author: Takuya UESHIN <ueshin@...>
Date:   2018-08-03T06:25:08Z

    Add `ArrayAggregate`.

----


---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org
For additional commands, e-mail: reviews-h...@spark.apache.org

Reply via email to