sql 表设计问题:需索引的可选字段应该允许 null 吗?

2022-12-29 10:16:35 +08:00
 1800x

比如一个用户表,中间一个字段,表示用户所属的企业。

用户可能不属于任何企业。

那么有两种解决方案:

  1. 企业字段允许为 null 。用户不属于企业时,企业字段为 null 。
  2. 企业字段不允许为 null ,默认 0 。用户不属于企业时,企业字段为 0 。

再叠加一个需求,用户表的企业字段需要加索引。

那么,应该选择哪个方案?或者有没有更好的方案?

4367 次点击
所在节点    数据库
42 条回复
co2fe
2022-12-30 09:04:59 +08:00
为什么企业 id 要放在用户表里面,为什么不用关系表存储?
万一你业务以后允许一个用户待在多个企业,你怎么搞。
而且使用中间表,我觉得可以解决你这个纠结 null 还是 0 的问题。
wi666
2023-04-11 14:29:45 +08:00
选 1 ,并将企业名称字段加索引

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://ex.noerr.eu.org/t/905289

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX