Vladimir Golubev created SPARK-51113:
----------------------------------------

             Summary: Correctness issue when reading a view with a trivial 
UNION/EXCEPT/INTERSECT query
                 Key: SPARK-51113
                 URL: https://issues.apache.org/jira/browse/SPARK-51113
             Project: Spark
          Issue Type: Improvement
          Components: SQL
    Affects Versions: 4.0.0
            Reporter: Vladimir Golubev


There's a parser issue where for trivial UNION/EXCEPT/INTERSECT queries inside 
views a keyword is considered an alias:
```
scala> spark.sql("CREATE OR REPLACE VIEW v1 AS SELECT 1 AS col1 UNION SELECT 2 
UNION SELECT 3 UNION SELECT 4")
val res58: org.apache.spark.sql.DataFrame = []

scala> spark.sql("SELECT * FROM v1").show()
+----+
|col1|
+----+
|   1|
|   2|
+----+


scala> spark.sql("SELECT * FROM v1").queryExecution.analyzed
val res60: org.apache.spark.sql.catalyst.plans.logical.LogicalPlan =
Project [col1#181]
+- SubqueryAlias spark_catalog.default.v1
   +- View (`spark_catalog`.`default`.`v1`, [col1#181])
      +- Project [cast(col1#179 as int) AS col1#181]
         +- Distinct
            +- Union false, false
               :- Project [1 AS col1#179]
               :  +- OneRowRelation
               +- Project [2 AS UNION#180]
                  +- OneRowRelation
```



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

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

Reply via email to