Hallo MySQL-Forum,
ich habe als Anfänger ein Problem, dass ich wohl ohne Hilfe so schnell nicht gelöst bekomme.
Ich habe ein Projekt, dass sich mit Hörspielen befaßt.
Meine Datenbankstruktur sieht so aus:
Jedes Hörspiel hat m-Sprecher und jeder Sprecher kann m-Rollen übernehmen.
tbl_hsp|rel_hsp_sprecher| tbl_sprecher|rel_rollen_sprecher| tblrolle
hspID |hspID | sprecherID |rollenID |rollenID
Titel |sprecherID | Name |sprecherID |R _name
Meine Anfrage z.B.lautet:
SELECT Titel, Name, R_name
FROM tbl_sprecher, rel_hsp_sprecher, tbl_hsp, tblrolle,rel_rollen_sprecher
WHERE tbl_hsp.hspID = 1
AND tbl_hsp.hspID = rel_hsp_sprecher.hspID
AND rel_hsp_sprecher.sprecherID = tbl_sprecher.sprecherID
AND rel_rollen_sprecher.rollenID = tblrolle.rollenID
AND rel_rollen_sprecher.sprecherID = tbl_sprecher.sprecherID order by Name
Als Ergebns bekomme ich jetzt den Titel (hsp.hspID=1), alle Sprecher mit ihren Rollen, aber auch die Sprecher der Folge1 die in anderen Hörspielfolgen eine Rolle haben, mit den Rollennamen. Das ist auch das ,was man mit der Anfrage erzielen sollte (wie mittlerweile herausgefunden habe. )
Wie bekomme ich es hin, das die Ausgabe nur die Sprecher/Rollen-Paare ausgibt, die für eine Folgennummer relevant sind ?
Ich vermute, meine Db-Struktur ist "falsch" ?
Würde mich freuen, wenn eine erfahrener DB-Bastler sich das mal anschaut.
Außerdem frage ich mich, wenn ich mit PHP ein formular zur Eingabe der Daten bastel ob das ganze überhaupt noch performant ist (ist es wohl eher nicht). Den durch die rel_x_y-tabellen habe ich ja nur Zahlenpaare einzugeben ?
ich habe als Anfänger ein Problem, dass ich wohl ohne Hilfe so schnell nicht gelöst bekomme.
Ich habe ein Projekt, dass sich mit Hörspielen befaßt.
Meine Datenbankstruktur sieht so aus:
Jedes Hörspiel hat m-Sprecher und jeder Sprecher kann m-Rollen übernehmen.
tbl_hsp|rel_hsp_sprecher| tbl_sprecher|rel_rollen_sprecher| tblrolle
hspID |hspID | sprecherID |rollenID |rollenID
Titel |sprecherID | Name |sprecherID |R _name
Meine Anfrage z.B.lautet:
SELECT Titel, Name, R_name
FROM tbl_sprecher, rel_hsp_sprecher, tbl_hsp, tblrolle,rel_rollen_sprecher
WHERE tbl_hsp.hspID = 1
AND tbl_hsp.hspID = rel_hsp_sprecher.hspID
AND rel_hsp_sprecher.sprecherID = tbl_sprecher.sprecherID
AND rel_rollen_sprecher.rollenID = tblrolle.rollenID
AND rel_rollen_sprecher.sprecherID = tbl_sprecher.sprecherID order by Name
Als Ergebns bekomme ich jetzt den Titel (hsp.hspID=1), alle Sprecher mit ihren Rollen, aber auch die Sprecher der Folge1 die in anderen Hörspielfolgen eine Rolle haben, mit den Rollennamen. Das ist auch das ,was man mit der Anfrage erzielen sollte (wie mittlerweile herausgefunden habe. )
Wie bekomme ich es hin, das die Ausgabe nur die Sprecher/Rollen-Paare ausgibt, die für eine Folgennummer relevant sind ?
Ich vermute, meine Db-Struktur ist "falsch" ?
Würde mich freuen, wenn eine erfahrener DB-Bastler sich das mal anschaut.
Außerdem frage ich mich, wenn ich mit PHP ein formular zur Eingabe der Daten bastel ob das ganze überhaupt noch performant ist (ist es wohl eher nicht). Den durch die rel_x_y-tabellen habe ich ja nur Zahlenpaare einzugeben ?
Kommentar