This is an automated email from the ASF dual-hosted git repository.
xiong pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/calcite.git
The following commit(s) were added to refs/heads/main by this push:
new 1a18264be5 [CALCITE-6546] Hive dialect does not support a sub-query in
the FROM clause without alias
1a18264be5 is described below
commit 1a18264be53f7735c01f3fddf7c28eac7ee5384b
Author: Xiong Duan <[email protected]>
AuthorDate: Tue Aug 27 11:47:41 2024 +0800
[CALCITE-6546] Hive dialect does not support a sub-query in the FROM clause
without alias
---
.../main/java/org/apache/calcite/sql/dialect/HiveSqlDialect.java | 4 ++++
.../java/org/apache/calcite/rel/rel2sql/RelToSqlConverterTest.java | 6 +++++-
2 files changed, 9 insertions(+), 1 deletion(-)
diff --git
a/core/src/main/java/org/apache/calcite/sql/dialect/HiveSqlDialect.java
b/core/src/main/java/org/apache/calcite/sql/dialect/HiveSqlDialect.java
index a8cee95f3b..bf40da483e 100644
--- a/core/src/main/java/org/apache/calcite/sql/dialect/HiveSqlDialect.java
+++ b/core/src/main/java/org/apache/calcite/sql/dialect/HiveSqlDialect.java
@@ -62,6 +62,10 @@ public class HiveSqlDialect extends SqlDialect {
return false;
}
+ @Override public boolean requiresAliasForFromItems() {
+ return true;
+ }
+
@Override public boolean supportsAliasedValues() {
return false;
}
diff --git
a/core/src/test/java/org/apache/calcite/rel/rel2sql/RelToSqlConverterTest.java
b/core/src/test/java/org/apache/calcite/rel/rel2sql/RelToSqlConverterTest.java
index 6d5af48cdc..b30595d5f0 100644
---
a/core/src/test/java/org/apache/calcite/rel/rel2sql/RelToSqlConverterTest.java
+++
b/core/src/test/java/org/apache/calcite/rel/rel2sql/RelToSqlConverterTest.java
@@ -6446,6 +6446,10 @@ class RelToSqlConverterTest {
sql(sql).ok(expected);
}
+ /**
+ * Test case for
+ * <a
href="https://issues.apache.org/jira/browse/CALCITE-6546">[CALCITE-6546]
+ * Hive dialect does not support a sub-query in the FROM clause without
alias</a>. */
@Test void testValues() {
final String sql = "select \"a\"\n"
+ "from (values (1, 'x'), (2, 'yy')) as t(\"a\", \"b\")";
@@ -6472,7 +6476,7 @@ class RelToSqlConverterTest {
final String expectedHive = "SELECT `a`\n"
+ "FROM (SELECT 1 `a`, 'x ' `b`\n"
+ "UNION ALL\n"
- + "SELECT 2 `a`, 'yy' `b`)";
+ + "SELECT 2 `a`, 'yy' `b`) `t`";
final String expectedBigQuery = "SELECT a\n"
+ "FROM (SELECT 1 AS a, 'x ' AS b\n"
+ "UNION ALL\n"