Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung | ||
faecher:informatik:oberstufe:datenbanken:joins:loseungen [26.11.2020 09:07] – sbel | faecher:informatik:oberstufe:datenbanken:joins:loseungen [13.11.2024 11:36] (aktuell) – Marco Kuemmel | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== | + | ====== |
- | ++++ Gib die Liste mit den Namen aller jemals bestellen Artikel mitsamt ihres Bestelldatums aus. | | + | ++++Gib die Liste mit den Namen aller jemals bestellen Artikel mitsamt ihres Bestelldatums aus. | |
<code sql> | <code sql> | ||
SELECT AName, BZeitpunkt FROM artikel, bestellt | SELECT AName, BZeitpunkt FROM artikel, bestellt | ||
Zeile 8: | Zeile 8: | ||
++++ | ++++ | ||
- | ++++ Gib die Liste aller Kundennummern zusammen mit den Namen der Artikel, die unter dieser Nummer bestellt wurden, aus.| | + | ++++Gib die Liste aller Kundennummern zusammen mit den Namen der Artikel, die unter dieser Nummer bestellt wurden, aus.| |
<code sql> | <code sql> | ||
SELECT kunden.KNr, artikel.AName FROM artikel, kunden, bestellt | SELECT kunden.KNr, artikel.AName FROM artikel, kunden, bestellt | ||
WHERE artikel.ANr = bestellt.ANr | WHERE artikel.ANr = bestellt.ANr | ||
- | AND kunden.KNr=bestellt.KNr | + | |
</ | </ | ||
++++ | ++++ | ||
- | ++++ Gib alle Zeitpunkte aus, zu denen Thomas Tischler Artikel im Webshop bestellt hat. | | + | ++++Gib alle Zeitpunkte aus, zu denen Thomas Tischler Artikel im Webshop bestellt hat. | |
<code sql> | <code sql> | ||
- | SELECT kunden.KNr, | + | SELECT |
+ | WHERE kunden.KVorname=' | ||
+ | AND kunden.KNachname=' | ||
+ | AND kunden.KNr=bestellt.KNr; | ||
+ | </ | ||
+ | ++++ | ||
+ | |||
+ | ++++ Gib die Namen aller Artikel aus, die Maximilian Mayer bestellt hat.| | ||
+ | |||
+ | <code sql> | ||
+ | SELECT KNachname,AName FROM kunden, | ||
+ | WHERE kunden.KNr = bestellt.KNr | ||
+ | AND artikel.ANr = bestellt.ANr | ||
+ | AND KVorname = " | ||
+ | AND KNachname = " | ||
+ | </ | ||
+ | ++++ | ||
+ | |||
+ | |||
+ | |||
+ | ++++ Gib die Namen aller Kunden aus, die mindestens einmal einen Artikel bestellt haben, absteigend sortiert nach dem Datum der letzten Bestellung.| | ||
+ | <code sql> | ||
+ | SELECT KNachname, Max(BZeitpunkt) FROM kunden,bestellt | ||
+ | WHERE kunden.KNr = bestellt.KNr | ||
+ | GROUP By KNachname | ||
+ | ORDER BY Max(BZeitpunkt) DESC; | ||
+ | </ | ||
+ | ++++ | ||
+ | |||
+ | |||
+ | |||
+ | ++++ Gib pro Kunde aus, wie viele Artikel er insgesamt bestellt hat. Die Liste soll absteigend sortiert nach der Anzahl der Bestellungen ausgegeben werden. | | ||
+ | <code sql> | ||
+ | SELECT Knachname, | ||
+ | WHERE kunden.KNr = bestellt.KNr | ||
+ | GROUP BY KNachname | ||
+ | ORDER BY count(*) DESC; | ||
+ | </ | ||
+ | ++++ | ||
+ | |||
+ | ++++Gib die Namen der Artikel aus mitsamt der Information, | ||
+ | <code sql> | ||
+ | SELECT AName, | ||
WHERE artikel.ANr = bestellt.ANr | WHERE artikel.ANr = bestellt.ANr | ||
- | AND kunden.KNr=bestellt.KNr | + | GROUP By AName |
+ | ORDER BY SUM(BAnzahl) DESC; | ||
</ | </ | ||
++++ | ++++ | ||
- | Gib die Namen aller Artikel | + | ++++ Gib pro Kunde aus, wie viel Geld er insgesamt ausgegeben |
+ | <code sql> | ||
+ | SELECT KNachname, | ||
+ | WHERE artikel.ANr = bestellt.ANr | ||
+ | AND kunden.KNr = bestellt.KNr | ||
+ | GROUP BY KNachname; | ||
+ | </ | ||
+ | ++++ | ||
+ | ++++Gib die Nummern und Namen der Kundenpaare aus, die den gleichen Artikel bestellt haben.| | ||
+ | <code sql> | ||
+ | SELECT k1.KNachname, | ||
+ | kunden AS k1, kunden AS k2, | ||
+ | bestellt AS b1,bestellt AS b2, artikel AS a | ||
+ | WHERE k1.KNr = b1.KNr | ||
+ | AND b1.ANr = a.ANr | ||
+ | AND b2.ANr = a.ANr | ||
+ | AND k2.KNr = b2.KNr | ||
+ | AND k1.KNr < k2.KNr; | ||
+ | </ | ||
+ | ++++ | ||
- | Gib die Namen aller Kunden aus, die mindestens einmal | + | ++++Zusatzaufgabe: |
- | - Gib pro Kunde aus, wie viele Artikel er insgesamt bestellt hat. Die Liste soll absteigend sortiert nach der Anzahl der Bestellungen ausgegeben werden. | + | <code sql> |
- | - Gib die Namen der Artikel aus mitsamt der Information, | + | SELECT kunden.KNachname, kunden.KVorname |
- | - Gib pro Kunde aus, wie viel Geld er insgesamt ausgegeben hat. | + | FROM kunden |
- | - Gib die Nummern und Namen der Kundenpaare aus, die den gleichen Artikel bestellt haben. | + | WHERE kunden.KNr NOT IN |
- | - Zusatzaufgabe: | + | |
+ | </ | ||
+ | ++++ |