SQL Grundkurs 2: Aufgaben und Lösungen

Beispiel 19: INNER JOIN

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Gefragt sind alle Artikel der Gruppen Haushalt und Garten mit ihren Lieferanten. Zusätzlich ist der Einkaufspreis gefragt, nach dem auch absteigend sortiert werden soll.

Transkript

In diesem Beispiel möchten wir nun die Artikel-Tabelle mit den Lieferanten kombinieren. Ausgeben möchten wir die Artikelnummer und die Bezeichnung, gemeinsam mit der Firmenbezeichnung des Lieferanten. Die besteht aus zwei Spalten, den Spalten "FIRMA1" und "FIRMA2", Da es eben auch Firmen gibt, die sehr lange Bezeichnungen haben, dann wird es auf diese zwei Spalten aufgeteilt. Das ist so, als würden wir im Adressblock zwei Zeilen verwenden. Diese "FIRMA2"-Spalte ist auch nicht immer befüllt, wenn es sehr kurze Lieferantenbezeichnungen gibt. Zur Vervollständigung möchten wir auch noch den Einkaufspreis ausgeben. In der Artikeltabelle finden wir als Fremdschlüssel die Spalte "LIEF", die wiederum auf den Primärschlüssel "LIEFNR" der Tabelle "LIEFERANTEN" verweist. Pausieren Sie nun das Video und lösen Sie die Aufgabe. Wenn Sie damit fertig sind, fahren Sie mit dem Video fort und sehen Sie sich meine Musterlösung an. Betrachten wir uns nun gemeinsam die Lösung. Wir finden hier einen klassischen INNER JOIN. Ich habe mit der Tabelle "wawi.artikel" begonnen und mit einem INNER JOIN die Tabelle "wawi.lieferanten" gejoint. Als Aliasnamen habe ich hier "a" für "artikel", und "l" für "lieferanten" vergeben. Verwechseln Sie bitte nicht dieses kleine "l" mit einer "1". Eine "1" wäre als Aliasname sogar ungültig, und würde zu einem Fehler führen, da Namen und auch Aliasnamen mit einem Buchstaben beginnen müssen und eben nicht mit einer Ziffer beginnen dürfen. Dass der Editor hier bei Oracle das "a" in fett darstellt soll uns weiter nicht stören, das ist einfach ein Darstellungsfehler. In der Join-Bedingung finden wir Lieferantennummer, "l.liefnr" gemeinsam mit "a.lief", der Lieferantennummer aus der Artikeltabelle. Um nur Artikel aus den Gruppen Haushalt und Garten zu verwenden, habe ich hier den IN-Operator verwendet. Die Reihenfolge in der wir hier Garten und Haushalt, das war das Kürzel "GA" und "HH", verwenden, spielt keine Rolle. Achten Sie darauf, dass bei Oracle zwischen Groß- und Kleinschreibung unterschieden wird, standardmäßig, und deswegen das "GA" und "HH" in Großbuchstaben auch eingegeben werden muss. Um das Ergebnis absteigend nach dem Einkaufspreis zu sortieren, ergänzen wir ein ORDER BY und versehen diese mit dem Schlüsselwort "DESC" für "descending". In der "SELECT"-Klausel haben wir neben Artikelnummerbezeichnung und Einkaufspreis eben die geforderten Spalte "FIRMA1" und "FIRMA2" dargestellt. Ich führe diese Anweisungen aus und wir sehen, dass sie uns dieses Ergebnis liefert. Keine Unterschiede gibt es hier, wenn wir die selbe Aufgabenstellung hier unter MySQL umgesetzt betrachten. Auch hier bekommen wir dieses Ergebnis absteigend sortiert mit der identen Anweisung. Es sind nur ANSI-konforme Elemente enthalten, und deshalb finden wir auch unter dem Microsoft SQL Server keinerlei Änderungen und bekommen hier das idente Ergebnis. Wir fangen also mit einer Tabelle an, INNER JOIN, zweite Tabelle und hinter dem Schlüsselwort ON wieder die gewohnte Join-Bedingung.

SQL Grundkurs 2: Aufgaben und Lösungen

Vertiefen Sie Ihre SQL-Kenntnisse. In diesem Workshop erhalten Sie zahlreiche Beispielaufgaben, die Sie selbst lösen können. Anschließend zeigt Ihnen der Trainer die Lösung.

7 Std. 41 min (61 Videos)
Derzeit sind keine Feedbacks vorhanden...

Dieses Training setzt SQL-Kenntnisse voraus, wie sie beispielsweise in „SQL lernen und anwenden“ vermittelt werden.

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!