-
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
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working