strongduanmu commented on code in PR #4553:
URL: https://github.com/apache/calcite/pull/4553#discussion_r2430889686


##########
core/src/main/java/org/apache/calcite/sql/validate/SqlValidatorImpl.java:
##########
@@ -2204,6 +2208,25 @@ protected void inferUnknownTypes(
     }
   }
 
+  private boolean isRowSqlNodeList(final RelDataType inferredType, final 
SqlNodeList nodeList) {
+    return inferredType.isStruct() && !nodeList.isEmpty()
+        && SqlKind.ROW == nodeList.get(0).getKind();

Review Comment:
   Hi @mihaibudiu @dssysolyatin, sorry for the late reply. I spent some time to 
research how to support this SQL.
   
   ```sql
   SELECT e.empno,r.r
   FROM emp AS e, LATERAL (SELECT ROW(e.empno, e.ename) AS r) AS r
   WHERE ROW(e.empno, e.ename) IN (
       r.r,
       ROW(?, ?)
   );
   ```
   
   I found that Calcite currently does not support ROW alias references in many 
components, including: `TypeCoercionImpl`, `SqlToRelConverter#convertInToOr`, 
and the join logic generated by Janio. So I plan to log a new Jira to record 
this SQL related issue and then try to support it.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to