Yuanjian Li created SPARK-31663: ----------------------------------- Summary: Grouping sets with having clause returns the wrong result Key: SPARK-31663 URL: https://issues.apache.org/jira/browse/SPARK-31663 Project: Spark Issue Type: Bug Components: SQL Affects Versions: 2.4.5, 3.0.0 Reporter: Yuanjian Li
Grouping sets with having clause returns the wrong result when the condition of having contained conflicting naming. See the below example: {quote} select sum(a) as b FROM VALUESÂ (1, 10), (2, 20) AS T(a, b) group by GROUPING SETS ((b), (a, b)) having b > 10 {quote} The `b` in `having b > 10` should be resolved as `T.b` not `sum(a)`, so the right result should be {quote} +---+ | b| +---+ | 2| | 2| +---+ {quote} instead of an empty result. The root cause is similar to SPARK-31519, it's caused by we parsed HAVING as Filter(..., Agg(...)) and resolved these two parts in different rules. The CUBE and ROLLUP have the same issue. -- This message was sent by Atlassian Jira (v8.3.4#803005) --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@spark.apache.org For additional commands, e-mail: issues-h...@spark.apache.org