MySQL で、絶対に変更されない限られた数がある場合、categories
それらが分類するもののテーブルに bool フィールドとしてそれらを作成する必要がありますか、それともマッピング テーブルを使用する必要がありますか? もしそうなら、なぜですか?
ケース A:
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 ほど「見栄えがよく」ありませんが、必要なクエリの点でははるかに単純に見えますか?
編集:私がする必要があるのは次のことだけだと付け加えるべきだと思います:
- スタッフ行をすべて取得する
- 1 つの特定のカテゴリを持つスタッフ行をすべて取得する
- 特定の ID を持つスタッフ行を 1 つ取得する