Arbeitsblatt Datenbanken & SQL mit Lösungen

Kostenloses Arbeitsblatt Datenbanken & SQL zum Ausdrucken: 8 Aufgaben von leicht bis Prüfungsniveau, mit Lösungsschlüssel. Drucke es aus oder speichere es als PDF.

Neues ArbeitsblattOnline mit Tipps üben

Für Lehrkräfte: kostenlos ausdrucken, kopieren und im Unterricht verwenden. Jedes neue Arbeitsblatt hat neue Werte und einen eigenen Lösungsschlüssel. Über einen Link zu ExamProblems auf Ihrer Kursseite freuen wir uns.

Name: ____________________   Datum: ____________

1.Leicht

Ein INNER JOIN liefert:

  1. AAlle Zeilen aus beiden Tabellen
  2. BAlle Zeilen aus der linken Tabelle, mit NULL, wo es keine Übereinstimmung gibt
  3. CNur Zeilen mit übereinstimmenden Werten in beiden Tabellen
  4. DZeilen, die nicht übereinstimmen
2.Leicht

Welche Anweisung entfernt Zeilen aus einer Tabelle?

  1. ATRUNCATE COLUMN
  2. BDELETE
  3. CREMOVE
  4. DDROP
3.Leicht

Was bewirkt GROUP BY in einer Abfrage?

  1. AEs sortiert die Zeilen des Ergebnisses alphabetisch
  2. BEs verbindet zwei Tabellen über ihre gemeinsamen Spalten
  3. CEs fasst Zeilen mit gleichen Werten zu Gruppen zusammen, sodass Aggregate pro Gruppe berechnet werden
  4. DEs entfernt Zeilen mit NULL-Werten
4.Mittel

Wann ist WHERE EXISTS (Unterabfrage) für eine Zeile wahr?

  1. AWenn die Unterabfrage eine Zahl größer als null liefert
  2. BWenn die Unterabfrage keine NULL-Werte liefert
  3. CWenn die Unterabfrage mindestens eine Zeile liefert
  4. DWenn die Unterabfrage genau eine Zeile liefert
5.Mittel

Was liefert EXCEPT (in Oracle MINUS genannt)?

  1. AAlle Zeilen beider Abfragen ohne Duplikate
  2. BZeilen, die in beiden Abfragen vorkommen
  3. CZeilen der ersten Abfrage, die in der zweiten nicht vorkommen
  4. DZeilen der zweiten Abfrage, die in der ersten nicht vorkommen
6.Mittel

Was ist ein Datenbank-Trigger?

  1. AEine geplante Sicherung der Datenbank
  2. BEine Abfrage, die ein Benutzer von Hand ausführt
  3. CEine Art Index, der Suchen beschleunigt
  4. DCode, der automatisch ausgeführt wird, wenn ein festgelegtes Ereignis wie INSERT, UPDATE oder DELETE an einer Tabelle eintritt
7.Schwer

Warum ist SELECT dept, name, COUNT(*) FROM emp GROUP BY dept in Standard-SQL ungültig?

  1. ACOUNT(*) kann nicht zusammen mit GROUP BY verwendet werden
  2. Bdept muss innerhalb einer Aggregatfunktion stehen
  3. CGROUP BY muss alle Spalten der Tabelle aufführen
  4. Dname ist weder gruppiert noch aggregiert und hat daher keinen einzelnen Wert pro Gruppe
8.Schwer

Warum verwendet man nach customers LEFT JOIN orders COUNT(o.id) statt COUNT(*), um die Bestellungen pro Kunde zu zählen?

  1. ACOUNT(*) zählt bei Kunden ohne Bestellungen die mit NULL gefüllte Zeile als 1
  2. BCOUNT(*) ignoriert Zeilen mit NULL-Werten
  3. CCOUNT(o.id) zählt nur verschiedene Kunden
  4. DCOUNT(*) ist nach einem Join nicht erlaubt

Lösungsschlüssel

  1. 1. C · Nur Zeilen mit übereinstimmenden Werten in beiden Tabellen
  2. 2. B · DELETE
  3. 3. C · Es fasst Zeilen mit gleichen Werten zu Gruppen zusammen, sodass Aggregate pro Gruppe berechnet werden
  4. 4. C · Wenn die Unterabfrage mindestens eine Zeile liefert
  5. 5. C · Zeilen der ersten Abfrage, die in der zweiten nicht vorkommen
  6. 6. D · Code, der automatisch ausgeführt wird, wenn ein festgelegtes Ereignis wie INSERT, UPDATE oder DELETE an einer Tabelle eintritt
  7. 7. D · name ist weder gruppiert noch aggregiert und hat daher keinen einzelnen Wert pro Gruppe
  8. 8. A · COUNT(*) zählt bei Kunden ohne Bestellungen die mit NULL gefüllte Zeile als 1

Vollständige Schritt-für-Schritt-Lösungen: Übe dieses Thema auf examproblems.com.