Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
Delphi 10 Seattle Enterprise
|
AW: FOREIGN KEY ausgeben?
25. Okt 2012, 16:39
und weil es so schön ist auch nochmal für die Ausgangsfrage http://sqlfiddle.com/#!2/45ebf/1/1
Tabellen
Code:
CREATE TABLE Buch
(`ID` int, `Titel` varchar(40) , `Autor` varchar(40) )
;
INSERT INTO Buch
(`ID`, `Titel`, `Autor`)
VALUES
(1,'Liegen','The Foo'),
(2,'Sitzen','The Foo'),
(3,'Stehen','The Foo'),
(4,'Fliegen','The Foo')
;
CREATE TABLE Leser
(`ID` int, `Name` varchar(10) , `Vorname` varchar(10) )
;
INSERT INTO Leser
(`ID`, `Name`, `Vorname`)
VALUES
(1, 'Lustig', 'Peter'),
(2, 'Klein', 'Erna')
;
CREATE TABLE Ausleihe
(`Buch_ID` int, `Leser_ID` int, `AusleihDatum` date, `RueckgabeDatum` date)
;
INSERT INTO Ausleihe
(`Buch_ID`,`Leser_ID`,`AusleihDatum`,`RueckgabeDatum`)
VALUES
(2,1,'2012-10-01',null),
(3,2,'2012-10-01',null)
;
Abfragen
Code:
SELECT
Buch.Titel,
Buch.Autor,
Leser.Name,
Leser.Vorname,
Ausleihe.AusleihDatum,
Ausleihe.RueckgabeDatum
FROM
Buch
JOIN Ausleihe
ON Buch.ID = Ausleihe.Buch_ID
JOIN Leser
ON Leser.ID = Ausleihe.Leser_ID;
SELECT
Buch.Titel,
Buch.Autor,
Leser.Name,
Leser.Vorname,
Ausleihe.AusleihDatum,
Ausleihe.RueckgabeDatum
FROM
Buch
LEFT JOIN Ausleihe
ON Buch.ID = Ausleihe.Buch_ID
LEFT JOIN Leser
ON Leser.ID = Ausleihe.Leser_ID;
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
|