MINT üben

Verbundabfragen

Dreißig Übungen zu Kreuzprodukt, Verbundbedingung und Abfragen über mehrere Tabellen — von AFB I bis AFB III.

Dein Fortschritt:
0 / 0 Aufgaben
1

Übungsaufgaben

Dreißig Übungen in gemischter Reihenfolge — du klickst, ziehst, ordnest, rechnest und knobelst. Jede Übung gibt dir sofort eine Rückmeldung, und zu jeder Aufgabe gibt es zwei gestufte Tipps: Der erste zeigt die Richtung, der zweite den entscheidenden Schritt. Die Chips zeigen das Anforderungsniveau: AFB I heißt wiedergeben und direkt anwenden, AFB II selbst entscheiden und verknüpfen, AFB III begründen, beurteilen oder eine Falle durchschauen. Aufgaben mit dem Chip Mix verbinden Wissen aus früheren Unterkapiteln, bei Trick steckt eine Falle drin. Fährst du über ein unterstrichenes Arbeitswort, siehst du, was es genau von dir verlangt.

A1
Der Weg zur Abfrage
AFB I

Ein Handballverein führt die Relationen Team(TeamNr, Teamname, Liga) und Spieler(SpielerNr, Name, Tore, ↑TeamNr). Gesucht sind die Namen aller Spieler des Teams Füchse. Beschreibe den Weg zur passenden Abfrage, indem du die Fragen des Entscheidungsbaums beantwortest.

Beantworte die Fragen des Entscheidungsbaums mit Ja oder Nein und schau, wo du herauskommst.
    Name steht in Spieler, Teamname in Team: zwei Tabellen. Spieler hat den Fremdschlüssel TeamNr, also genügt ein Verbund, und weil nur das Team Füchse gefragt ist, kommt ein Filter mit AND dazu.
    Prüfe zuerst, in welchen Tabellen die gesuchten Attribute stehen. Stehen sie in zwei Tabellen, brauchst du einen Verbund.
    Der Fremdschlüssel TeamNr in Spieler verweist direkt auf Team, deshalb ohne Zwischentabelle. Weil nur ein Team gefragt ist, kommt eine Filterbedingung mit AND hinzu.
    A2
    Suiten im Hotel
    AFB II

    Ein Hotel speichert Gäste, Zimmer und Buchungen. Die Abfrage SELECT Gast.Name, Buchung.Naechte * Zimmer.Preis AS Kosten FROM Gast, Buchung, Zimmer WHERE Gast.GastNr = Buchung.GastNr AND Buchung.ZimmerNr = Zimmer.ZimmerNr AND Zimmer.Typ = 'Suite'; soll belegen, dass die Suiten zusammen über 2000 € einbringen. Weise das nach: Trage die Zahl der Ergebniszeilen und die Summe der Kosten ein.

    Gast
    GastNrName
    1Aylin
    2Bruno
    3Carla
    4Dario
    Zimmer
    ZimmerNrTypPreis (€)
    10Suite220
    11Standard90
    12Suite260
    13Standard100
    Buchung
    BuchNrGastNrZimmerNrNaechte
    11103
    22112
    33124
    41135
    54102
    Zeilen
    €
    Verfolge jede Buchung über ZimmerNr zum Zimmer und über GastNr zum Gast. Nur Buchungen von Zimmern vom Typ Suite bleiben übrig.
    Drei Buchungen betreffen Suiten: 3 · 220 € + 4 · 260 € + 2 · 220 € = 660 € + 1040 € + 440 € = 2140 €. Die Standardzimmer fallen durch den Filter heraus.
    A3
    Bausteine wählen
    AFB III

    Ein Musikportal speichert Bands und Alben. Gesucht sind die Namen aller Alben von Bands aus Island, das neueste zuerst. Entscheide dich in jedem Menü für den Baustein, mit dem die Abfrage das Gewünschte liefert.

    Band
    BandNrNameLand
    1BjörkIsland
    2Sigur RósIsland
    3EnyaIrland
    4AbbaSchweden
    Album
    AlbumNrNameJahrBandNr
    1Debut19931
    2Homogenic19971
    3Takk20052
    4Watermark19883
    5Arrival19764
    Wähle in jedem Menü den passenden Eintrag und prüfe dann.

    SELECT

    FROM

    WHERE

    AND

    ORDER BY

    Name gibt es in beiden Tabellen, also muss Album.Name stehen. Beide Tabellen gehören in FROM, verbunden wird über den Fremdschlüssel Album.BandNr = Band.BandNr. Das Land steht in Band, Text braucht Hochkommas, und „neueste zuerst“ heißt Jahr absteigend (DESC).
    Beide Tabellen haben ein Attribut Name. Welche Schreibweise macht klar, welches gemeint ist?
    Verbunden wird Fremdschlüssel mit Primärschlüssel. Das Land gehört zur Band, und „neueste zuerst“ bedeutet: Jahr absteigend.