SQL Befehl für Filmdatenbank
am 28.05.2006 13:46:52 von Werner EggertHallo,
wie kann ich mit nachfolgendem SQL-Befehl erreichen,
das bei der Ausgabe das Beispiel "Flashdance"
nur einmal ausgeben wird
und das Genre hinten mehrfach ausgegeben wird
(Genre ist in DB "rel_film_genre" für Flshdance 2x eingetragen,
einmal mit Musik und einmal mit Romantik)?
***************************
*Ausgabewunsch
***************************
Titel: Flashdance | Regiesseur: Lyne | Genre: Musik, Romantik
Titel: Sie leben | Regiesseur: Carpenter | Genre: Action
***************************
*SQL Statement
***************************
$SQLStmt = "SELECT film.Titel,regisseur.Name,genre.Bezeichnung FROM film ";
#*Verknüpfung Film<>Regisseur
$SQLStmt .= "INNER JOIN rel_film_regisseur ON film.id =
rel_film_regisseur.id_film ";
$SQLStmt .= "INNER JOIN regisseur ON rel_film_regisseur.id_regisseur =
regisseur.id ";
#*Verknüpfung Film<>Genre
$SQLStmt .= "INNER JOIN rel_film_genre ON film.id = rel_film_genre.id_film
";
$SQLStmt .= "INNER JOIN genre ON rel_film_genre.id_genre = genre.id ";
#*Sortierung
$SQLStmt .= "ORDER BY film.titel";
***************************
*(tatsächliche) Ausgabe (zu obigem SQL-Befehl)
***************************
Titel: Flashdance | Regiesseur: Lyne | Genre: Musik
Titel: Flashdance | Regiesseur: Lyne | Genre: Romantik
Titel: Sie leben | Regiesseur: Carpenter | Genre: Action
***************************
*Datenbankstruktur
***************************
*film* | id | Titel | TitelOriginal | Jahr | Land | FSK | Beschreibung |
Kritik |
*darsteller* | id | Name | Vorname |
*genre* | id | Bezeichnung |
*regisseur* | id | Name | Vorname |
*rel_film_darsteller* | id | id_film | id_darsteller |
*rel_film_genre* | Feld | id | id_film | id_genre |
*rel_film_regisseur* | id | id_film | id_regisseur |