原标题:《Time to Move On: Querying Without Nulls and Bags》 评分: 26 | 作者: Jimmc414 💭 去掉空值和重复行,数据就会听话了? 🎯 讨论背景 这场讨论围绕一篇主张“告别 NULL 和 bag”的关系查询语言/论文展开,核心是在挑战 SQL 长期沿用的两类语义:NULL 用来表示缺失或未知值,bag(多重集)允许重复行。评论里有人主张用 algebraic types(代数类型)来替代 NULL,也有人集中争论多重集是否应该对用户可见,因为现实世界的数据并不总能被简单地强制成唯一集合。相关提案指向 Rel(一个面向 relational data 的 programming language)及其教程,说明这不是纯概念讨论,而是在尝试做 SQL 的替代方案。整个线程还牵涉到 SQL 的生态锁定、互操作性、监控工具支持和迁移成本,所以争论焦点不仅是语义是否更优,还包括它能否在现有 RDBMS(关系型数据库管理系统)世界里真正落地。 📌 讨论焦点 反对彻底禁止 bag 有人认为 NULL 的最佳处理方式是 algebra