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.
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
Was bewirkt GROUP BY in einer Abfrage?
AEs entfernt Zeilen mit NULL-Werten
BEs fasst Zeilen mit gleichen Werten zu Gruppen zusammen, sodass Aggregate pro Gruppe berechnet werden
CEs sortiert die Zeilen des Ergebnisses alphabetisch
DEs verbindet zwei Tabellen über ihre gemeinsamen Spalten
2.Leicht
Was bewirkt eine CHECK-Constraint?
ASie weist Zeilen zurück, deren Werte eine Bedingung nicht erfüllen
BSie überprüft das Passwort des Benutzers
CSie zählt die Zeilen einer Tabelle
DSie prüft, ob eine Tabelle existiert, bevor eine Abfrage darauf ausgeführt wird
3.Leicht
Zu welchem Teil von SQL gehören Anweisungen wie CREATE, ALTER und DROP?
ATransaction Control Language (TCL)
BData Control Language (DCL)
CData Definition Language (DDL)
DData Manipulation Language (DML)
4.Mittel
Welche Abfrage liefert die Anzahl verschiedener Städte in der Tabelle customers?
ASELECT COUNT(DISTINCT city) FROM customers
BSELECT DISTINCT COUNT(city) FROM customers
CSELECT COUNT(city) FROM customers GROUP BY city
DSELECT SUM(DISTINCT city) FROM customers
5.Mittel
Die zweite Normalform (2NF) beseitigt:
ATransitive Abhängigkeiten zwischen Nichtschlüsselspalten über eine andere Nichtschlüsselspalte
BFremdschlüssel
CAlle NULL-Werte
DPartielle Abhängigkeiten von Nichtschlüsselspalten von einem Teil eines zusammengesetzten Schlüssels
6.Mittel
Was liefert EXCEPT (in Oracle MINUS genannt)?
AZeilen der ersten Abfrage, die in der zweiten nicht vorkommen
BZeilen der zweiten Abfrage, die in der ersten nicht vorkommen
CAlle Zeilen beider Abfragen ohne Duplikate
DZeilen, die in beiden Abfragen vorkommen
7.Schwer
Eine Tabelle hat eine Million Zeilen und eine boolesche Spalte is_active, die für 95% davon TRUE ist. Warum könnte der Optimierer einen Index auf is_active für WHERE is_active = TRUE ignorieren?
AAuf booleschen Spalten lassen sich keine Indexe anlegen
BDer Optimierer verwendet in WHERE-Klauseln nie Indexe
CDie meisten Zeilen treffen zu, daher ist ein vollständiger Tabellenscan billiger als viele Indexzugriffe
DDer Index behandelt TRUE als NULL
8.Schwer
Warum gilt NATURAL JOIN in Produktionsabfragen als riskant?
AEr ignoriert Primär- und Fremdschlüssel und behält nur NULL-Zeilen
BEr liefert immer ein kartesisches Produkt
CEr verbindet über jede gleichnamige Spalte, sodass eine neue Spalte das Ergebnis unbemerkt verändern kann
DEr wird von keiner Datenbank unterstützt
Lösungsschlüssel
1. B · Es fasst Zeilen mit gleichen Werten zu Gruppen zusammen, sodass Aggregate pro Gruppe berechnet werden
2. A · Sie weist Zeilen zurück, deren Werte eine Bedingung nicht erfüllen
3. C · Data Definition Language (DDL)
4. A · SELECT COUNT(DISTINCT city) FROM customers
5. D · Partielle Abhängigkeiten von Nichtschlüsselspalten von einem Teil eines zusammengesetzten Schlüssels
6. A · Zeilen der ersten Abfrage, die in der zweiten nicht vorkommen
7. C · Die meisten Zeilen treffen zu, daher ist ein vollständiger Tabellenscan billiger als viele Indexzugriffe
8. C · Er verbindet über jede gleichnamige Spalte, sodass eine neue Spalte das Ergebnis unbemerkt verändern kann
Vollständige Schritt-für-Schritt-Lösungen: Übe dieses Thema auf examproblems.com.