dbs:db03
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| dbs:db03 [08.05.2012 15:29] – Stefan Gaum | dbs:db03 [02.10.2014 18:18] (aktuell) – gelöscht Stefan Gaum | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| - | [[dbs: | ||
| - | ===== Lektion 3 - Zusammenführen der Datensätze mit SQL ===== | ||
| - | |||
| - | Um Daten aus beiden Tabellen zu erhalten, verwendet man diese SQL-Abfrage: | ||
| - | SELECT * FROM Schueler, Lehrer | ||
| - | Diese Abfrage liefert allerdings jede mögliche Kombination der Datensätze aus der Tabelle „Schueler“ mit denen der Tabelle „Lehrer“. | ||
| - | |||
| - | Es gehören aber nur die zusammen, bei denen das Attribut „KLNr“ der | ||
| - | Schüler mit dem Attribut „LNr“ der Lehrer übereinstimmt. Wir schränken daher das Ergebnis ein: | ||
| - | SELECT * FROM Schueler, Lehrer WHERE KLNr = LNr | ||
| - | Diese Abfrage liefert nur noch die Datensätze, | ||
| - | Jetzt könnte man einerseits die Spalten des Ergebnisses noch einschränken: | ||
| - | SELECT SVorname, SNachname, LDienstbez, LNachname | ||
| - | FROM Schueler, Lehrer | ||
| - | WHERE KLNr = LNr | ||
| - | Zudem könnte man die Anzahl der zurückgegebenen Datensätze noch einschränken: | ||
| - | SELECT SVorname, SNachname, LDienstbez, LNachname | ||
| - | FROM Schueler, Lehrer | ||
| - | WHERE KLNr = LNr AND SKlasse >= 9 | ||
| - | Damit werden nur die Daten der Schüler, die in Klasse 9 oder höher sind, zurückgegeben.\\ | ||
| - | Übrigens: Es kann durchaus vorkommen, dass ein Spaltenname in zwei verschiedenen Tabellen | ||
| - | vorkommt. Bei einer Abfrage, die diese beiden Tabellen verknüpft, ist dann nicht mehr klar, welche | ||
| - | Spalte gemeint ist. In solchen Fällen kann man den Tabellennamen und einen Punkt vor den | ||
| - | Spaltennamen setzen, um klarzumachen, | ||
| - | SELECT Schueler.SVorname, | ||
| - | FROM Schueler, Lehrer | ||
| - | WHERE Schueler.KLNr = Lehrer.LNr AND Schueler.SKlasse >= 9 | ||
| - | |||
| - | |||
| - | {{: | ||
| - | |||
| - | Importiere die Datenbank '' | ||
| - | |||
| - | Erfinde eigene Beispiele und teste diese. | ||
| - | |||
| - | {{: | ||
| - | |||
| - | Importiere die Datenbank '' | ||
| - | |||
| - | [[dbs: | ||
dbs/db03.1336490949.txt.gz · Zuletzt geändert: 08.05.2012 15:29 von Stefan Gaum
