spark-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Dylan Guedes (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (SPARK-20856) support statement using nested joins
Date Wed, 24 Jul 2019 17:11:00 GMT

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

Dylan Guedes updated SPARK-20856:
---------------------------------
    Description: 
While DB2, ORACLE etc support a join expressed as follows, SPARK SQL does not. 
Not supported
{code:sql}
select * from 
  cert.tsint tsint inner join cert.tint tint inner join cert.tbint tbint
     on tbint.rnum = tint.rnum
     on tint.rnum = tsint.rnum
{code}
versus written as shown
{code:sql}
select * from 
  cert.tsint tsint inner join cert.tint tint on tsint.rnum = tint.rnum inner join cert.tbint
tbint on tint.rnum = tbint.rnum
{code}   

{code:text}
ERROR_STATE, SQL state: org.apache.spark.sql.catalyst.parser.ParseException: 
extraneous input 'on' expecting {<EOF>, ',', '.', '[', 'WHERE', 'GROUP', 'ORDER', 'HAVING',
'LIMIT', 'OR', 'AND', 'IN', NOT, 'BETWEEN', 'LIKE', RLIKE, 'IS', 'JOIN', 'CROSS', 'INNER',
'LEFT', 'RIGHT', 'FULL', 'NATURAL', 'LATERAL', 'WINDOW', 'UNION', 'EXCEPT', 'MINUS', 'INTERSECT',
EQ, '<=>', '<>', '!=', '<', LTE, '>', GTE, '+', '-', '*', '/', '%', 'DIV',
'&', '|', '^', 'SORT', 'CLUSTER', 'DISTRIBUTE', 'ANTI'}(line 4, pos 5)

== SQL ==
select * from 
  cert.tsint tsint inner join cert.tint tint inner join cert.tbint tbint
     on tbint.rnum = tint.rnum
     on tint.rnum = tsint.rnum
-----^^^
, Query: select * from 
  cert.tsint tsint inner join cert.tint tint inner join cert.tbint tbint
     on tbint.rnum = tint.rnum
     on tint.rnum = tsint.rnum.
SQLState:  HY000
ErrorCode: 500051
{code}


  was:
While DB2, ORACLE etc support a join expressed as follows, SPARK SQL does not. 

Not supported
select * from 
  cert.tsint tsint inner join cert.tint tint inner join cert.tbint tbint
     on tbint.rnum = tint.rnum
     on tint.rnum = tsint.rnum

versus written as shown
select * from 
  cert.tsint tsint inner join cert.tint tint on tsint.rnum = tint.rnum inner join cert.tbint
tbint on tint.rnum = tbint.rnum
   


ERROR_STATE, SQL state: org.apache.spark.sql.catalyst.parser.ParseException: 
extraneous input 'on' expecting {<EOF>, ',', '.', '[', 'WHERE', 'GROUP', 'ORDER', 'HAVING',
'LIMIT', 'OR', 'AND', 'IN', NOT, 'BETWEEN', 'LIKE', RLIKE, 'IS', 'JOIN', 'CROSS', 'INNER',
'LEFT', 'RIGHT', 'FULL', 'NATURAL', 'LATERAL', 'WINDOW', 'UNION', 'EXCEPT', 'MINUS', 'INTERSECT',
EQ, '<=>', '<>', '!=', '<', LTE, '>', GTE, '+', '-', '*', '/', '%', 'DIV',
'&', '|', '^', 'SORT', 'CLUSTER', 'DISTRIBUTE', 'ANTI'}(line 4, pos 5)

== SQL ==
select * from 
  cert.tsint tsint inner join cert.tint tint inner join cert.tbint tbint
     on tbint.rnum = tint.rnum
     on tint.rnum = tsint.rnum
-----^^^
, Query: select * from 
  cert.tsint tsint inner join cert.tint tint inner join cert.tbint tbint
     on tbint.rnum = tint.rnum
     on tint.rnum = tsint.rnum.
SQLState:  HY000
ErrorCode: 500051




> support statement using nested joins
> ------------------------------------
>
>                 Key: SPARK-20856
>                 URL: https://issues.apache.org/jira/browse/SPARK-20856
>             Project: Spark
>          Issue Type: Sub-task
>          Components: SQL
>    Affects Versions: 2.1.0
>            Reporter: N Campbell
>            Priority: Major
>              Labels: bulk-closed
>
> While DB2, ORACLE etc support a join expressed as follows, SPARK SQL does not. 
> Not supported
> {code:sql}
> select * from 
>   cert.tsint tsint inner join cert.tint tint inner join cert.tbint tbint
>      on tbint.rnum = tint.rnum
>      on tint.rnum = tsint.rnum
> {code}
> versus written as shown
> {code:sql}
> select * from 
>   cert.tsint tsint inner join cert.tint tint on tsint.rnum = tint.rnum inner join cert.tbint
tbint on tint.rnum = tbint.rnum
> {code}   
> {code:text}
> ERROR_STATE, SQL state: org.apache.spark.sql.catalyst.parser.ParseException: 
> extraneous input 'on' expecting {<EOF>, ',', '.', '[', 'WHERE', 'GROUP', 'ORDER',
'HAVING', 'LIMIT', 'OR', 'AND', 'IN', NOT, 'BETWEEN', 'LIKE', RLIKE, 'IS', 'JOIN', 'CROSS',
'INNER', 'LEFT', 'RIGHT', 'FULL', 'NATURAL', 'LATERAL', 'WINDOW', 'UNION', 'EXCEPT', 'MINUS',
'INTERSECT', EQ, '<=>', '<>', '!=', '<', LTE, '>', GTE, '+', '-', '*', '/',
'%', 'DIV', '&', '|', '^', 'SORT', 'CLUSTER', 'DISTRIBUTE', 'ANTI'}(line 4, pos 5)
> == SQL ==
> select * from 
>   cert.tsint tsint inner join cert.tint tint inner join cert.tbint tbint
>      on tbint.rnum = tint.rnum
>      on tint.rnum = tsint.rnum
> -----^^^
> , Query: select * from 
>   cert.tsint tsint inner join cert.tint tint inner join cert.tbint tbint
>      on tbint.rnum = tint.rnum
>      on tint.rnum = tsint.rnum.
> SQLState:  HY000
> ErrorCode: 500051
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

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


Mime
View raw message