substrait-io / substrait

A cross platform way to express data transformation, relational algebra, standardized record expression and plans.
https://substrait.io
Apache License 2.0
1.11k stars 147 forks source link

feat: define SetRel output nullability derivation (#558) #654

Closed vbarua closed 1 week ago

vbarua commented 2 weeks ago

I've attempted to clarify the language around SetRels and provide additional information around deriving nullability for the output types.

westonpace commented 2 weeks ago

Does this mean that the union relation considers "null matches null". In other words, if I intersect {NULL, 0, 5} with {10, NULL, 5} is the result {NULL, 5} and if I intersect {NULL, 0, 5} with {0, 10, 20} is the result {0}?

Do we want to clarify that somewhere too (I think the "does NULL match NULL" question comes up in joins too but I don't remember if we clarified there or not)

vbarua commented 2 weeks ago

Does this mean that the union relation considers "null matches null".

@westonpace it does. I added a note about this.