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

Evgeny Stanilovsky updated CALCITE-5253:
----------------------------------------
    Description: 
Such issue is not possible for now: 
{code:java}
CREATE TABLE t1(a INTEGER, b INTEGER, c INTEGER);
CREATE TABLE t2(b INTEGER, c INTEGER, d INTEGER);
CREATE TABLE t3(c INTEGER, d INTEGER, e INTEGER);

SELECT t1.c, t2.d, t1.b, t1.a, t3.e FROM t1 natural join t2 natural join t3 
WHERE t1.a=1;
{code}

cause:


{noformat}
SqlValidatorException: Column name 'C' in NATURAL join or USING clause is not 
unique on one side of join
{noformat}

This validation is correct for example for case :
 
{noformat}
select e.ename, d.name from dept as d natural join (select ename, sal as 
deptno, deptno from emp) as e
{noformat}
but fails for described above.

Was broken by:
[1] https://issues.apache.org/jira/browse/CALCITE-5171


  was:
Such issue is not possible for now: 
{code:java}
CREATE TABLE t1(a INTEGER, b INTEGER, c INTEGER);
CREATE TABLE t2(b INTEGER, c INTEGER, d INTEGER);
CREATE TABLE t3(c INTEGER, d INTEGER, e INTEGER);

SELECT t1.c, t2.d, t1.b, t1.a, t3.e FROM t1 natural join t2 natural join t3 
WHERE t1.a=1;
{code}

cause:


{noformat}
SqlValidatorException: Column name 'C' in NATURAL join or USING clause is not 
unique on one side of join
{noformat}

This validation is correct for example for case :
 
{noformat}
select e.ename, d.name
        from dept as d
        natural join (select ename, sal as deptno, deptno from emp) as e
{noformat}
but fails for described above.

Was broken by:
[1] https://issues.apache.org/jira/browse/CALCITE-5171



> Join expression validation partially broken.
> --------------------------------------------
>
>                 Key: CALCITE-5253
>                 URL: https://issues.apache.org/jira/browse/CALCITE-5253
>             Project: Calcite
>          Issue Type: Bug
>          Components: core
>    Affects Versions: 1.31.0
>            Reporter: Evgeny Stanilovsky
>            Assignee: Evgeny Stanilovsky
>            Priority: Major
>              Labels: pull-request-available
>
> Such issue is not possible for now: 
> {code:java}
> CREATE TABLE t1(a INTEGER, b INTEGER, c INTEGER);
> CREATE TABLE t2(b INTEGER, c INTEGER, d INTEGER);
> CREATE TABLE t3(c INTEGER, d INTEGER, e INTEGER);
> SELECT t1.c, t2.d, t1.b, t1.a, t3.e FROM t1 natural join t2 natural join t3 
> WHERE t1.a=1;
> {code}
> cause:
> {noformat}
> SqlValidatorException: Column name 'C' in NATURAL join or USING clause is not 
> unique on one side of join
> {noformat}
> This validation is correct for example for case :
>  
> {noformat}
> select e.ename, d.name from dept as d natural join (select ename, sal as 
> deptno, deptno from emp) as e
> {noformat}
> but fails for described above.
> Was broken by:
> [1] https://issues.apache.org/jira/browse/CALCITE-5171



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

Reply via email to