目的の階層がプログラム->テーマ->ストランド->年->ユニット->learning_eventの場合、これを反映するようにテーブル構造を調整する必要があります。特に、テーマはテーマとプログラムの間に外部キーの関係を持っている必要があり、1年間に追加のレベルが必要です。テーマとプログラムの間に外部キーがあると、クロスジョインの必要がなくなります。クロス結合にはあなたを噛む習慣があり、通常は避ける必要があります。
この
外部キーは効果的にリンクを連鎖させることに注意してください。たとえば、learning_eventとstrandの間に特定の外部キーは必要ありません。これは、チェーン内に介在するキーが関係を保証するためです。