• SQL JOIN: Abfragen über mehrere Tabellen
  • anonym
  • 02.01.2025
  • Allgemeine Hochschulreife
  • Informatik
  • 10
Um die Lizenzinformationen zu sehen, klicken Sie bitte den gewünschten Inhalt an.

SQL JOIN: Ab­fra­gen über meh­re­re Ta­bel­len

Immer wie­der kommt es vor, dass Kun­den die Aus­leih­frist über­zie­hen. Um das Er­stel­len von Mah­nun­gen zu er­leich­tern, wünscht sich die Ge­schäfts­füh­rung des Vi­deo­Cen­ters eine Liste mit den Namen aller Kun­den und den von ihnen ak­tu­ell aus­ge­lie­he­nen Fil­men.



Ist ein Film noch nicht zu­rück­ge­ge­ben, so hat das At­tri­but lei­ru­eck den vom Sys­tem beim Aus­lei­hen ein­ge­tra­ge­nen Wert '0000‐00‐00'. Doch al­lein mit die­ser In­for­ma­ti­on kom­men Sie mit Ihren bis­he­ri­gen Kennt­nis­sen nicht ans Ziel: Die Kun­den­na­men ste­hen in der Ta­bel­le kun­den, die Aus­leih­in­for­ma­ti­o­nen je­doch in der Ta­bel­le aus­lei­he:

1
Sehen Sie sich die fol­gen­den bei­den Ta­bel­len, den SQL-​Befehl und die Aus­ga­be an.
Er­klä­ren Sie sich ge­gen­sei­tig, was der JOIN-​Befehl macht. No­tie­ren Sie diese.
Ta­bel­le 1: kun­den Ta­bel­le 2: aus­lei­he
SQL
SELECT kuname, kuvorna, kunden.kunr, ausleihe.kunr, vinr, leiausda
FROM kunden JOIN ausleihe
WHERE leirueck LIKE '0000-00-00'
SQL-​Befehl (1)
Aus­ga­be 1
Der JOIN-​Befehl verknüpft mehrere Tabellen. Dabei werden hier alle Zeilen aus der ersten Tabelle mit allen Zeilen aus der zweiten Tabelle ausgegeben.
2
Sehen Sie sich den fol­gen­den SQL-​Befehl an. Wel­che Aus­ga­be er­war­ten Sie?
Schrei­ben Sie diese bei­spiel­haft unter die Ta­bel­len­na­men.
Ver­glei­chen Sie Ihre Ver­mu­tun­gen.
Ta­bel­le 1: kun­den Ta­bel­le 2: aus­lei­he
SQL
SELECT *
FROM kunden JOIN ausleihe
ON kunden.kunr = ausleihe.kunr
WHERE leirueck LIKE '0000-00-00'
SQL-​Befehl (2)

ku­na­me

ku­vor­na

kun­den.kunr

aus­lei­he.kunr

vinr

lei­aus­da

lei­ru­eck

Be­cker

Les­ter

3852

3852

2342

2013-04-29

0000-00-00

Un­fried

Nico

3270

3270

2344

2013-04-27

0000-00-00

Aus­ga­be 2
3
Be­schrei­ben Sie, wel­che Funk­ti­on das Schlüs­sel­wort ON hat. Ver­glei­chen Sie ihre Be­schrei­bun­gen.
Mit ON kann die Ausgabe gefiltert werden. ON ist also quasi die WHERE-​Filterfunktion für JOINS.
4
Nun sol­len nicht mehr alle Spal­ten aus­ge­ge­ben wer­den.
For­mu­lie­ren Sie den pas­sen­den SQL-​Befehl für die fol­gen­de Aus­ga­be:
TIPP: Sie kön­nen sich an den SQL-​Befehl aus A2 hal­ten.
SQL
SQL-​Befehl

ku­na­me

ku­vor­na

vinr

lei­aus­da

Be­cker

Les­ter

2342

2013-04-29

Un­fried

Nico

2344

2013-04-27

Aus­ga­be 3
x