在 MySQL 中,如果我有一个永远不会改变的有限数量,categories
我应该将它们创建为它们分类的表中的布尔字段,还是应该使用映射表?如果是这样,为什么?
案例一:
t_stuff
id (int)
name (string)
category_a (bool)
category_b (bool)
category_c (bool)
category_d (bool)
category_e (bool)
category_f (bool)
案例B:
t_stuff
id (int)
name (string)
t_categories
id (int)
name (string)
t_stuff_category
id (int)
stuff_id (int)
category_id (int)
虽然 A 看起来不像 B 那样“好”,但就所需的查询而言,它似乎要简单得多?
编辑:我觉得我应该补充一点,我需要做的就是:
- 获取所有东西行
- 获取具有一个特定类别的所有东西行
- 获取一个具有特定 id 的东西行