1
は3つのテーブルとその関係を含み、私のデータベース・ダイアグラムである別のテーブルから単一の列に参照する複数の列を取得するクエリを登録しよう -以下
Students
、PersonalInfo
、Subjects
現在、Students
次の表は、持っています値。
私は以下のように表示するデータを照会しようとしています。私が間違っている出力の下に取得
SELECT FullName, SubjectName AS 'Subject1', SubjectName AS 'Subject2',
SubjectName AS 'Subject3', SubjectName AS 'Subject4',SubjectName AS 'Subject5'
FROM Subjects JOIN Students ON Students.Subject1 =Subjects.Id
JOIN PersonalInfo ON PersonalInfo.Id=Students.StudId
を試してみました何
。最初の主題の名前だけを表示しています。
誰も私に正しい道を案内でした。
そう5は、合計で参加し、1は、各被験者の列に参加する必要があります。しかし、このデータ構造は間違っています(部分的には被験者の数が制限され、すべての被験者を一緒に報告することが難しいため)。代わりに、「Students」テーブル、「StudentsSubjects」テーブル、および「Subjects」テーブルが必要です。生徒にはIDと名前だけが含まれ、StudentSubjectsにはStudentIDとSubjectIDだけが含まれます。 StudentSubjectsは、各IDの外部キーを親テーブルに戻します。これは多対多の関係と呼ばれ、未来のために学ばなければならない貴重なものです。 – ADyson
@ADyson提案をいただきありがとうございます。私はそれを試みます。あなたの時間を感謝します。 –