Hi all, SQLParser fails to resolve nested CASE WHEN statement like this:
select case when (1) + case when 1>0 then 1 else 0 end = 2 then 1 else 0 end from tb ==================== Exception ==================== Exception in thread "main" org.apache.spark.sql.catalyst.parser.ParseException: mismatched input 'then' expecting {'.', '[', 'OR', 'AND', 'IN', NOT, 'BETWEEN', 'LIKE', RLIKE, 'IS', 'WHEN', EQ, '<=>', '<>', '!=', '<', LTE, '>', GTE, '+', '-', '*', '/', '%', 'DIV', '&', '|', '^'}(line 5, pos 0) == SQL == select case when (1) + case when 1>0 then 1 else 0 end = 2 then 1 else 0 end ^^^ from tb But,remove parentheses will be fine: select case when 1 + case when 1>0 then 1 else 0 end = 2 then 1 else 0 end from tb I've already filed a JIRA for this: https://issues.apache.org/jira/browse/SPARK-19472 <https://issues.apache.org/jira/browse/SPARK-19472> Any help is greatly appreciated! Best, Stan -- View this message in context: http://apache-spark-developers-list.1001551.n3.nabble.com/SQL-SQLParser-fails-to-resolve-nested-CASE-WHEN-statement-with-parentheses-in-Spark-2-x-tp20867.html Sent from the Apache Spark Developers List mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe e-mail: dev-unsubscr...@spark.apache.org