File tree Expand file tree Collapse file tree 1 file changed +21
-0
lines changed
core/src/test/java/org/apache/calcite/rel/rel2sql Expand file tree Collapse file tree 1 file changed +21
-0
lines changed Original file line number Diff line number Diff line change @@ -11814,4 +11814,25 @@ public Sql schema(CalciteAssert.SchemaSpec schemaSpec) {
1181411814 sql(sql).schema(CalciteAssert.SchemaSpec.JDBC_SCOTT).ok(expected);
1181511815 }
1181611816
11817+ @Test void testMultiLevelCrossReference() {
11818+ final String sql = "SELECT \"e\".\"ENAME\",\n"
11819+ + " (SELECT COUNT(*)\n"
11820+ + " FROM (SELECT \"d\".\"DEPTNO\", \"d\".\"DNAME\" FROM \"DEPT\" \"d\" "
11821+ + " JOIN \"BONUS\" \"b\" ON \"d\".\"DEPTNO\" = \"e\".\"DEPTNO\") AS \"mid\"\n"
11822+ + " WHERE \"mid\".\"DNAME\" = (SELECT \"DNAME\" FROM \"DEPT\" "
11823+ + " WHERE \"DEPTNO\" = \"e\".\"DEPTNO\" "
11824+ + " AND \"LOC\" = \"mid\".\"DNAME\"))\n"
11825+ + "FROM \"EMP\" AS \"e\"";
11826+ final String expected = "SELECT \"ENAME\", (SELECT COUNT(*)\n"
11827+ + "FROM (SELECT \"DEPT\".\"DEPTNO\", \"DEPT\".\"DNAME\"\n"
11828+ + "FROM \"SCOTT\".\"DEPT\"\n"
11829+ + "INNER JOIN \"SCOTT\".\"BONUS\" ON \"DEPT\".\"DEPTNO\" = \"EMP\".\"DEPTNO\") AS \"t\"\n"
11830+ + "WHERE \"DNAME\" = (SELECT \"DNAME\"\n"
11831+ + "FROM \"SCOTT\".\"DEPT\"\n"
11832+ + "WHERE \"DEPTNO\" = \"EMP\".\"DEPTNO\" AND \"LOC\" = \"t\".\"DNAME\"))\n"
11833+ + "FROM \"SCOTT\".\"EMP\" AS \"EMP\"";
11834+
11835+ sql(sql).schema(CalciteAssert.SchemaSpec.JDBC_SCOTT).ok(expected);
11836+ }
11837+
1181711838}
You can’t perform that action at this time.
0 commit comments