私はこれらのテーブルを持っています
クライアント
id(PK), name, logo
学校
id(PK), name, logo, client_id (FK)
クラス
id(PK), name, school_id (FK)
主題
id(PK), name, class_id (FK)
アプローチ 1.
サブジェクト ID があります。サブジェクトの class_id、school_id、および client_id を取得する必要があります。Client、School、Class テーブルから ID を取得するために、JOIN を使用してクエリを作成できます。
アプローチ 2
私はこのようなテーブルのデザインを持っています
クライアント
id(PK), name, logo
学校
id(PK), name, logo, client_id (FK)
クラス
id(PK), name, school_id (FK), client_id (FK)
主題
id(PK), name, class_id (FK), class_id (FK), school_id (FK), client_id (FK)
この場合、次のような単純なクエリですべての詳細を取得できます
SELECT * FROM Subject WHERE id = '2'
どちらがより適切で推奨されるアプローチですか? 私は2番目のアプローチが好きですが、それが推奨されるかどうかはわかりません.
ティア