1

Guardian、Student、StudentsGuardian の 3 つのテーブルがあります。テーブル情報は以下の通り

Guardian:
 id(pk)

Student:
 id(pk)
 name
 address


StudentsGuardian:
  student_id(fk)
  guardian_id(fk)

Guardian_id=2(仮定)の生徒を選択したいです。実際にはこれらはリレーショナル テーブルであるため、それを達成する方法を考えることができません。結合を適用すると、結合テーブルが返されますが、guardian_id= 特定の ID を持つ学生の情報のみが必要です。
それは基本的な質問かもしれませんが、私はそれに行き詰まっています。ありがとう

4

3 に答える 3

1
SELECT 
    * 
FROM  Guardian
INNER JOIN StudentsGuardian ON StudentsGuardian.guardian_id = Guardian.id
INNER JOIN Student ON Student.id = StudentsGuardian.student_id
WHERE StudentsGuardian.guardian_id = 2
于 2013-11-05T11:10:41.547 に答える
1

以下のクエリを使用します。

SELECT s.id, s.name, s.address 
     FROM Student s 
      INNER JOIN StudentsGuardian sg ON s.id = sg.student_id 
       WHERE sg.guardian_id = 'somespecific_id'
于 2013-11-05T11:11:23.057 に答える
0
SELECT Student.name, Student.address 
FROM Student JOIN StudentsGuardian ON Student.id = StudentsGuardian.student_id
WHERE StudentsGuardian.guardian_id = 2

それはすべきです。

于 2013-11-05T11:15:46.727 に答える