3.11 Abituraufgaben

Aufgabe

Aufgabe 3-16: Abiturprüfung Wirtschaftsinformatik 2010/11

Die Aufgaben beziehen sich auf die MySQL-Datenbank Fortbildung. Laden Sie die SQL-Datei herunter, entpacken diese und führen das enthaltene SQL-Skript firmenwagen.sql zum Beispiel mit der MySQL Workbench (Datei - Skript öffnen ...) aus.

Teilaufgabe 1.2.5 betrifft Inhalte aus Kapitel 3.10.

Fortbildung (Relationales Datenmodell)
Abb. 3-119a: Fortbildung (Relationales Datenmodell)
Abb_3_120_Abi_WI_10-11_1-2.jpg
Abb. 3-120: Aufgabe 1 – 1.2.2 bis 1.2.6
Lösung
Lösung
  • 1.2.2

    • Variante 1

      SQL
      SELECT DISTINCT Name, Vorname
      FROM Belegung INNER JOIN Teilnehmer ON Belegung.T_Nr=Teilnehmer.T_Nr
      ORDER BY Name ASC, Vorname ASC;
      Abb. 3-121: SQL-Anweisung
    • Variante 2

      SQL
      SELECT Name, Vorname
      FROM Belegung INNER JOIN Teilnehmer ON Belegung.T_Nr=Teilnehmer.T_Nr
      GROUP BY Teilnehmer.T_Nr
      ORDER BY Name ASC, Vorname ASC;
      Abb. 3-122: SQL-Anweisung
  • 1.2.3

    • Variante 1

      SQL
      SELECT S_Nr, Thema, Beginn, Name
      FROM Seminar INNER JOIN Leiter ON Seminar.L_Nr=Leiter.L_Nr
      WHERE Thema IN ("Küchenplanung", "Kundenwerbung")
            AND Beginn BETWEEN "2009-03-01" AND "2009-03-31"
            AND Name="Hahn";
      Abb. 3-123: SQL-Anweisung
    • Variante 2

      SQL
      SELECT S_Nr, Thema, Beginn, Name
      FROM Seminar INNER JOIN Leiter ON Seminar.L_Nr=Leiter.L_Nr
      WHERE (Thema="Küchenplanung" OR Thema="Kundenwerbung")
             AND Beginn BETWEEN "2009-03-01" AND "2009-03-31"
             AND Name="Hahn";
      Abb. 3-124: SQL-Anweisung
  • 1.2.4

    SQL
    SELECT Geschlecht, COUNT(*) AS Anzahl
    FROM Teilnehmer
    GROUP BY Geschlecht;
    Abb. 3-125: SQL-Anweisung
  • 1.2.5

    SQL
    SELECT Name AS Leitername, Thema, Dauer
    FROM Seminar INNER JOIN Leiter ON Seminar.L_Nr=Leiter.L_Nr
    WHERE Dauer = (SELECT MIN(Dauer) FROM Seminar);
    Abb. 3-126: SQL-Anweisung
  • 1.2.6

    SQL
    SELECT COUNT(*)*Gebuehr AS Umsatz
    FROM Belegung INNER JOIN Seminar ON Belegung.S_Nr=Seminar.S_Nr
    GROUP BY Belegung.S_Nr;
    Abb. 3-127: SQL-Anweisung
Aufgabe

Aufgabe 3-17: Abiturprüfung Wirtschaftsinformatik 2011/12

Die Aufgaben beziehen sich auf die MySQL-Datenbank Kursdatenbank. Laden Sie die SQL-Datei herunter, entpacken diese und führen das enthaltene SQL-Skript firmenwagen.sql zum Beispiel mit der MySQL Workbench (Datei - Skript öffnen ...) aus.

Teilaufgabe 1.3.2 betrifft Inhalte aus Kapitel 3.10.

Abb_3_128_Abi_WI_11-12_1-3.jpg
Abb. 3-128: Aufgabe 1 – 1.3
Lösung
Lösung
  • 1.3.1

    SQL
    SELECT Teilnehmer.TeilnehmerNr, Name, Vorname, PLZ, Ort, Anzahl_besuchte_Kursstunden
    FROM Belegungen
      INNER JOIN Teilnehmer
        ON
    Belegungen.TeilnehmerNr=Teilnehmer.TeilnehmerNr
      INNER JOIN Orte
        ON Teilnehmer.OrtNr=Orte.OrtNr
    WHERE Anzahl_besuchte_Kursstunden > 5 AND Ort="Villingen-Schwenningen";
    Abb. 3-129: SQL-Anweisung
  • 1.3.2

    SQL
    SELECT kursbezeichnung, kursgebuehr_pro_stunde
    FROM KURSE
    WHERE kursgebuehr_pro_stunde > (SELECT AVG(kursgebuehr_pro_stunde) FROM kurse);
    Abb. 3-130: SQL-Anweisung
  • 1.3.3

    SQL
    SELECT Teilnehmer.TeilnehmerNr, Name, Vorname,SUM(Anzahl_besuchte_Kursstunden) as Anzahl_Stunden
    FROM Belegungen INNER JOIN Teilnehmer ON Belegungen.TeilnehmerNr=Teilnehmer.TeilnehmerNr
    GROUP BY Teilnehmer.TeilnehmerNr;
    Abb. 3-131: SQL-Anweisung
  • 1.3.4

    SQL
    SELECT Kursbezeichnung, Name, Vorname, Anzahl_besuchte_Kursstunden, Kursgebuehr_pro_Stunde, Anzahl_besuchte_Kursstunden*Kursgebuehr_pro_Stunde AS Gesamtkursgebühr
    FROM Belegungen
      INNER JOIN Teilnehmer
        ON Belegungen.TeilnehmerNr=Teilnehmer.TeilnehmerNr
      INNER JOIN Kurse
        ON Belegungen.KursNr=Kurse.KursNr
    WHERE Kursbezeichnung = "Word 2010";
    Abb. 3-132: SQL-Anweisung
  • 1.3.5

    SQL
    SELECT Kursbezeichnung, SUM(Kursgebuehr_pro_Stunde*Anzahl_besuchte_Kursstunden) AS erzielter_Umsatz
    FROM Belegungen INNER JOIN Kurse ON Belegungen.KursNr=Kurse.KursNr
    GROUP BY Kursbezeichnung;
    Abb. 3-133: SQL-Anweisung
Aufgabe

Aufgabe 3-18: Abiturprüfung Wirtschaftsinformatik 2012/13

Die Aufgaben beziehen sich auf die MySQL-Datenbank mietimmo. Laden Sie die SQL-Datei herunter, entpacken diese und führen das enthaltene SQL-Skript firmenwagen.sql zum Beispiel mit der MySQL Workbench (Datei - Skript öffnen ...) aus.

mietimmo (Relationales Datenmodell)
Abb. 3-133a: mietimmo (Relationales Datenmodell)
Abb_3_134_Abi_WI_12-13_1-2.jpg
Abb. 3-134: Aufgabe 1 – 1.2
Lösung
Lösung
  • 1.2.1

    SQL
    SELECT bezeichnung, grundmietpreis, art, lage
    FROM Immobilien INNER JOIN Kategorien ON Immobilien.kategorieNr=Kategorien.kategorieNr;
    Abb. 3-135: SQL-Anweisung
  • 1.2.2

    SQL
    SELECT name, vorname, strasse, plz, ort, privatkunde
    FROM Zuordnung
      INNER JOIN Kunden
        ON Zuordnung.kundenNr=Kunden.kundenNr
      INNER JOIN Adressen
        ON Kunden.adressenNr=Adressen.adressenNr
      INNER JOIN Plz_Ort
        ON Adressen.ortNr=Plz_Ort.ortNr
    WHERE privatkunde=TRUE;
    Abb. 3-136: SQL-Anweisung
  • 1.2.3

    SQL
    SELECT COUNT(*) AS Anzahl_Privatkunden
    FROM Zuordnung
    WHERE privatkunde=TRUE;
    Abb. 3-138: SQL-Anweisung
  • 1.2.4

    SQL
    SELECT SUM(grundmietpreis) AS MieteinnahmenProMonat
    FROM Immobilien
    WHERE kategorieNr=4;
    Abb. 3-139: SQL-Anweisung
  • 1.2.5

    SQL
    SELECT ort, AVG(grundmietpreis) AS DurchschnittsmieteProMonat
    FROM Immobilien
      INNER JOIN Adressen
        ON Immobilien.adressenNr=Adressen.adressenNr
      INNER JOIN Plz_Ort
        ON Adressen.ortNr=Plz_Ort.ortNr
    WHERE ort="Biberach";
    Abb. 3-140: SQL-Anweisung
  • 1.2.6

    SQL
    SELECT privatkunde, COUNT(*) AS Anzahl
    FROM Zuordnung
    GROUP BY privatkunde;
    Abb. 3-141: SQL-Anweisung