Tag Archive: SQL-Abfragen


Nach einer langen Pause hier also der nächste und letzte Teil, die Aufgabe für die Beispiele steht in Teil I.

Schritt 5

Bei zwei oder mehr Tabellen, die verwendet werden, müssen die Tabellen verknüpft werden. Dazu am besten die Primär- und Fremdschlüßel betrachten und suchen welcher davon in irgendeiner anderen Tabelle auch vorhanden ist. Wenn man die richtigen gefunden hat einfach nach Syntax im WHERE mit einem = dazwischen eintragen.

Beispiel nach Aufgabe im ersten Teil:

SELECT  Personalnr, Kundennr

FROM     Mitarbeiter, Kunde

WHERE   Mitarbeiter.Personalnr = Kunde.Personalnr ;

Bei drei oder mehr verwendeten Tabellen kann man sich das ganze so vorstellen, als wären die Tabellen eine Menschenkette die sich an den Händen hällt.

Datenbank

Alle Gleichsetzungen werden einfach mit AND verbunden.

Beispiel nach oberem Bild:

SELECT         A.X, B.Y, C.Z

FROM           A,B,C

WHERE         A.X = B.X

AND               B.Y=C.Y;

Schritt 6:

Ab hier beginnt der Teil indem einem ein Schema nichts mehr hillft. Aber in Klausuren und Prüfungen habe ich die Erfahrung gemacht, das die Lehrer schon recht gut Punkte für den Teil geben der nach dem Schema erarbeitet werden kann.

So nun also der nächste Teil, die Aufgabe für die Beispiele steht in Teil I.

Schritt 3

Als nächsten einen Blick auf die gegebene Datenbank werfen, dabei überprüfen ob die Bezeichnungen der Spalten mit den vorher eingetragenen übereinstimmen. Als nächstes die Tabellen aus denen die Spalten stammen laut Syntax eintragen.

Beispiel nach Aufgabe im ersten Teil:

SELECT  Personalnr, Kundennr

FROM     Mitarbeiter, Kunde

WHERE                       ;

Ist nur eine Tabelle betroffen geht es mit Schritt 6 weiter.

Schritt 4

Werden zwei oder mehr Tabellen abgefragt, so sollte alles Tabelle.Spalte geschrieben werden. Es ist zwar nicht bei allen abgefragten Spalten nötig schadet aber nicht.

Beispiel nach Aufgabe im ersten Teil:

SELECT  Mitarbeiter.Personalnr, Kunde.Kundennr

FROM     Mitarbeiter, Kunde

WHERE                       ;

Hier also der nächste Teil der Datenbankabfragen, die Aufgabe für die Beispiele ist in Teil I.

 

Schritt 1

Das wichtigste überhaupt, ist es die Aufgabe ordentlich zu lesen. Dabei auf Formulierungen wie: „es soll….angezeigt werden“; „es soll….gelöscht werden“; „es sollen…eingefügt werden“ usw. achten.

Daraus entscheiden, ob ein Select, Delete oder Update gefragt ist. Entsprechend beginnen die Syntax hinzuschreiben.

Beispiel nach Aufgabe im ersten Teil:

SELECT

FROM

WHERE                      ;

 

Schritt 2

Jetzt die Aufgabe nochmals lesen und dabei suchen was angezeigt, eingefügt oder gelöscht usw. werden soll. Diese beim lesen Unterstreichen oder anders markieren. Diese Sachen in die begonnene Syntax eintragen.

Beispiel nach Aufgabe im ersten Teil:

SELECT  Personalnummer, Kundennummer

FROM

WHERE                       ;

Bei Datenbankabfragen beschreibe ich hauptsächlich den Teil der Lösung der ohne jegliche Logik möglich ist. Ich möchte ausdrücklich davor warnen nur mit diesen Kenntnissen in eine Klausur oder gar die Abschlussprüfung zu gehen. Um aber den grundsätzlichen Vorgang einer Datenbankabfrage zu verstehen eignet sich die Anleitung wunderbar.

Die Beispielsyntax bezieht sich auf Standard SQL, es kann Abweichungen zu bspw. Microsoft SQL geben, der Schritt an sich muss aber in jedem Fall gegangen werden.

 

Für die Beispiele verwende ich folgende Datenbank:

Mitarbeiter(Personalnr, Name, Vorname, Strasse, PLZ, Ort)

Kunde(Kundennr, Personalnr, Firma, Strasse, PLZ, Ort)

Auftrag(Auftragsnr, Kundennr, Datum)

Auftragsposition(Auftragsnr, Auftragspos, Artikelnr, Menge)

Artikel(Artikelnr, Beschreibung, EK, VK)

 

Aufgabe für das Beispiel:

Erstelle eine Liste aller Mitarbeiter mit Personalnummer und den Kundennummern die sie betreuen.

 

Die Anleitung wird sich über mehrere Teile erstrecken, damit nicht ein riesiger Eintrag entsteht.