Ich habe drei Tische
students table
------------------------------------
id(PK, A_I) | student_name | nationality
teachers table
------------------------------------
id(PK, A_I) | teacher_name | email
classroom table
----------------------
id(PK, A_I) | date | teacher_id(FK to teachers.id) | student_id(FK to students.id)
Wenn mir der Name des Lehrers ( david
zum Beispiel) und die student_id ( 7
zum Beispiel) gegeben und ich gebeten würde, die teacher_id
in die classroom
Tabelle einzufügen, basierend auf der id
in der teachers
Tabelle, würde ich Folgendes tun:
insert into classroom (date, teacher_id, student_id)
select '2014-07-08', id, 7
from teachers
where teacher_name = 'david';
Was wäre, wenn ich nicht direkt den Studentenausweis und nur den Namen des Studenten erhalten hätte? Angenommen, ich habe den Lehrernamen 'david' und den Schülernamen 'sam' erhalten. Wie bekomme ich die teacher_id
from- teachers
Tabelle und auch student_id
die students
table und füge beide classroom
anhand ihrer jeweiligen Namen in die table ein?