Time to Move On: Why SQL's Nulls and Bags Are a 'Billion Dollar Mistake' We Can Avoid

Time to Move On: Querying Without Nulls and Bags

Time to Move On: Why SQL's Nulls and Bags Are a 'Billion Dollar Mistake' We Can Avoid

SQL's success stems from its declarative nature, but its foundational choices—nulls and bags—are often tolerated as unavoidable evils. Drawing on their experience building Rel, a language for end-to-end relational programming, the authors argue these features are not only avoidable but harmful. They debunk common justifications for nulls and bags and highlight the benefits of a null-free language with set semantics, offering a path toward fully normalized relations that Codd would approve of.

We argue that the evil is completely avoidable: reasons offered for justifying bags and nulls evaporate at a closer examination.

More from this day

2026-08-13