GeeksforGeeks (日本語)
3つ以上のテーブルからデータをフェッチする必要がある場合があります。この記事では、それを実現するための2つのアプローチについて説明します。
例:
3つのテーブルの作成:
- 学生
- マーク
- 詳細
注:はっきりしない場合は画像をクリックして、大きなサイズで表示してください。
表1:学生
表2:マーク
表3:詳細
3つ以上のテーブルを結合する2つのアプローチ:
1。 SQLでの結合を使用したテーブルの結合:
2つのテーブルを結合するために実行されるのと同じロジックが適用されます。つまり、n個のテーブルを結合するための結合ステートメントの最小数は(n-1)です。
クエリ:
出力:
2。親子関係の使用:
これはかなり興味深いアプローチです。列Xを1つのテーブルの主キーとして、別のテーブルの外部キーとして作成します(つまり、親子関係を作成します)。
作成したテーブルを見てみましょう。
s_idは学生テーブルの主キーであり、外部キーです。マークテーブルのキー。 (student(parent)– mark(child))。
school_idは、marksテーブルの主キーとdetailsテーブルの外部キーです。 (marks(parent)– details(child))。
クエリ:
出力:
記事タグ:
SQL
練習タグ:
admin
0