-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Closed
Labels
bugSomething isn't workingSomething isn't working
Description
Describe the bug
When doing a grouping set on columns with null values we produce the incorrect result.
To Reproduce
Run the following in query in datafusion-cli
> CREATE TABLE integers_with_nulls (value INT) as VALUES (1), (NULL);
0 row(s) fetched.
Elapsed 0.016 seconds.
> SELECT value, min(value) FROM integers_with_nulls GROUP BY CUBE(value);
+-------+--------------------------------+
| value | min(integers_with_nulls.value) |
+-------+--------------------------------+
| 1 | 1 |
| | 1 |
+-------+--------------------------------+
Expected behavior
The expected bevahior is that the null in the data creates a different group from the nulls from the grouping set. The exected results are
> SELECT value, min(value) FROM integers_with_nulls GROUP BY CUBE(value);
+-------+--------------------------------+
| value | min(integers_with_nulls.value) |
+-------+--------------------------------+
| 1 | 1 |
| | 1 |
| | |
+-------+--------------------------------+
This is the behavior in PostgresSQL, Spark and DuckDB (and most likely other query engines).
Additional context
No response
jayzhan211
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working