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

Haisheng Yuan updated CALCITE-2935:
-----------------------------------
    Description: 
ANY, SOME is equivalent with bool_or. EVERY is equivalent with bool_and. Parser 
needs to be changed to support these aggregate functions.

https://blog.jooq.org/2014/12/18/a-true-sql-gem-you-didnt-know-yet-the-every-aggregate-function/
https://mysqlserverteam.com/using-the-aggregate-functions-any-some-every-with-mysql/

Note that if ANY or SOME aggregate function is placed on the right side of 
comparison operation and argument of this function is a subquery additional 
parentheses around aggregate function are required, otherwise it will be parsed 
as quantified comparison predicate.

Example:

ANY(NAME LIKE 'W%')
A = (ANY((SELECT B FROM T)))


  was:
ANY, SOME is equivalent with bool_or. EVERY is equivalent with bool_and.

https://blog.jooq.org/2014/12/18/a-true-sql-gem-you-didnt-know-yet-the-every-aggregate-function/
https://mysqlserverteam.com/using-the-aggregate-functions-any-some-every-with-mysql/



> Support  ANY, SOME, EVERY aggregate functions
> ---------------------------------------------
>
>                 Key: CALCITE-2935
>                 URL: https://issues.apache.org/jira/browse/CALCITE-2935
>             Project: Calcite
>          Issue Type: New Feature
>          Components: core
>            Reporter: Haisheng Yuan
>            Priority: Major
>
> ANY, SOME is equivalent with bool_or. EVERY is equivalent with bool_and. 
> Parser needs to be changed to support these aggregate functions.
> https://blog.jooq.org/2014/12/18/a-true-sql-gem-you-didnt-know-yet-the-every-aggregate-function/
> https://mysqlserverteam.com/using-the-aggregate-functions-any-some-every-with-mysql/
> Note that if ANY or SOME aggregate function is placed on the right side of 
> comparison operation and argument of this function is a subquery additional 
> parentheses around aggregate function are required, otherwise it will be 
> parsed as quantified comparison predicate.
> Example:
> ANY(NAME LIKE 'W%')
> A = (ANY((SELECT B FROM T)))



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to