Beruflich Dokumente
Kultur Dokumente
PRAXIS 7 SQL-ABFRAGEN
Kurs: Datenbank-Design
Student:
Tacna - Peru
2021-I
Abfragen zu einer Tabelle
1. Geben Sie die Namen aller Produkte in der Produkttabelle an.
SELECT name
VON Produkt
2. Geben Sie die Namen und Preise aller Produkte in der Produkttabelle an.
VON Produkt
SELECT *
VON Produkt
4. Geben Sie den Namen der Produkte, den Preis in Euro und den Preis in US-Dollar (USD) an.
VON Produkt
5. Geben Sie den Namen der Produkte, den Preis in Euro und den Preis in US-Dollar (USD) an.
Verwenden Sie die folgenden Aliasnamen für die Spalten: Produktname, Euro, Dollar.
VON Produkt
6. Geben Sie die Namen und Preise aller Produkte in der Produkttabelle an, wobei Sie die Namen
in Großbuchstaben umwandeln.
VON Produkt
7. Geben Sie die Namen und Preise aller Produkte in der Produkttabelle an, wobei Sie die Namen
in Kleinbuchstaben umwandeln.
VON Produkt
8. In einer Spalte sind die Namen aller Hersteller aufzuführen, in einer weiteren Spalte sind die
ersten beiden Buchstaben des Herstellernamens groß zu schreiben.
vom Hersteller
9. Geben Sie die Namen und Preise aller Produkte in der Produkttabelle an und runden Sie den
Preiswert.
VON Produkt
10. Geben Sie die Namen und Preise aller Produkte in der Produkttabelle an, wobei Sie den
Preiswert so abschneiden, dass er ohne Nachkommastellen angezeigt wird.
VON Produkt
11. Geben Sie den Code der Hersteller an, die Produkte in der Produkttabelle haben.
SELECT hersteller_code
VON Produkt
12. Führen Sie die Codes der Hersteller auf, die Produkte in der Produkttabelle haben, und
streichen Sie dabei die Codes, die sich wiederholen.
VON Produkt
SELECT name
vom Hersteller
SELECT name
vom Hersteller
VON Produkt
16. Gibt eine Liste der ersten 5 Zeilen der Herstellertabelle zurück.
SELECT *
vom Hersteller
BEGRENZUNG 5
17. Gibt eine Liste mit 2 Zeilen zurück, beginnend mit der vierten Zeile der Herstellertabelle. Die
vierte Zeile sollte ebenfalls in die Antwort aufgenommen werden.
SELECT *
vom Hersteller
BEGRENZUNG 3, 2
18. Nennen Sie den Namen und den Preis des billigsten Produkts. (Nur ORDER BY- und LIMIT-
Klauseln verwenden)
VON Produkt
BEGRENZUNG 1
19. Nennen Sie den Namen und den Preis des teuersten Produkts. (Nur ORDER BY- und LIMIT-
Klauseln verwenden)
VON Produkt
BEGRENZUNG 1
20. Geben Sie die Namen aller Produkte des Herstellers an, deren Herstellercode gleich 2 ist.
SELECT name
VON Produkt
WHERE hersteller_code = 2
21. Geben Sie die Namen der Produkte an, deren Preis kleiner oder gleich 120 € ist.
SELECT name
VON Produkt
22. Geben Sie die Namen der Produkte an, deren Preis größer oder gleich 400 € ist.
SELECT name
VON Produkt
SELECT name
VON Produkt
24. Alle Produkte mit einem Preis zwischen 80 € und 300 € auflisten. Ohne Verwendung des
Operators BETWEEN.
SELECT *
VON Produkt
25. Alle Produkte mit einem Preis zwischen 60 € und 200 € auflisten. Verwendung des Operators
BETWEEN.
SELECT *
VON Produkt
26. Führen Sie alle Produkte auf, deren Preis über 200 € liegt und die einen Herstellercode gleich
6 haben.
SELECT *
VON Produkt
WHERE preis > 200 AND hersteller_code = 6
27. Führen Sie alle Produkte auf, bei denen der Herstellercode 1, 3 oder 5 ist. Ohne Verwendung
des IN-Operators.
28. Führen Sie alle Produkte auf, bei denen der Herstellercode 1, 3 oder 5 ist. Verwendung des
IN-Operators.
29. Geben Sie den Namen und den Preis der Produkte in Cent an (der Preiswert sollte mit 100
multipliziert werden). Erstellen Sie einen Alias für die Spalte, die den Preis enthält, der Cent
heißen soll.
VON Produkt
30. Nennen Sie die Namen der Hersteller, deren Name mit dem Buchstaben S beginnt.
SELECT name
vom Hersteller
32. Nennen Sie die Namen der Hersteller, deren Name das Zeichen w enthält.
33. Nennen Sie die Namen der Hersteller, deren Name 4 Zeichen lang ist.
34. Gibt eine Liste mit den Namen aller Produkte zurück, die die Zeichenfolge Portable im
Namen enthalten.
WHERE name LIKE '%Laptop%' WHERE name LIKE '%Laptop%' WHERE name LIKE '%Laptop%'
35. Gibt eine Liste mit den Namen aller Produkte zurück, die die Zeichenfolge Monitor im Namen
enthalten und einen Preis von weniger als 215 € haben.
1. liefert eine Liste mit dem Produktnamen, dem Preis und dem Herstellernamen aller Produkte
in der Datenbank.
ON produkt.hersteller_code = hersteller.code
2. Gibt eine Liste mit Produktnamen, Preis und Herstellernamen aller Produkte in der Datenbank
zurück. Sortieren Sie das Ergebnis nach dem Namen des Herstellers in alphabetischer
Reihenfolge.
ON produkt.hersteller_code = hersteller.code
ON produkt.hersteller_code = hersteller.code
4. Gibt den Namen des Produkts, seinen Preis und den Namen des Herstellers des billigsten
Produkts zurück.
BEGRENZUNG 1
5. Gibt den Namen des Produkts, seinen Preis und den Namen des Herstellers für das teuerste
Produkt zurück.
BEGRENZUNG 1
6. Liefert eine Liste aller Produkte des Herstellers Lenovo.
ON produkt.hersteller_code = hersteller.code
7. Senden Sie eine Liste aller Produkte des Herstellers Crucial, die einen Preis von mehr als 200€
haben.
ON produkt.hersteller_code = hersteller.code
8. Liefert eine Liste mit allen Produkten der Hersteller Asus, Hewlett-Packard und Seagate. Ohne
Verwendung des IN-Operators.
ON produkt.hersteller_code = hersteller.code
manufacturer.name = 'Seagate
9. Liefert eine Liste mit allen Produkten der Hersteller Asus, Hewlett-Packard und Seagate.
Verwendung des IN-Operators.
ON produkt.hersteller_code = hersteller.code
ON produkt.hersteller_code = hersteller.code
11. Gibt eine Liste mit dem Namen und dem Preis aller Produkte zurück, deren Herstellername
das Zeichen w im Namen enthält.
ON produkt.hersteller_code = hersteller.code
12. Liefert eine Liste mit Produktnamen, Preis und Herstellernamen von allen
Produkte mit einem Preis von über oder gleich 180 €. Ordnen Sie das Ergebnis zunächst nach
dem
Preis (in absteigender Reihenfolge) und zweitens nach Name (in aufsteigender Reihenfolge)
ON produkt.hersteller_code = hersteller.code
ON hersteller.code = produkt.hersteller_code
1. liefert eine Liste aller in der Datenbank vorhandenen Hersteller mit den Produkten, die jeder
einzelne von ihnen anbietet. In der Liste werden auch die Hersteller aufgeführt, die keine
zugehörigen Produkte haben.
ON hersteller.code = produkt.hersteller_code
2. Geben Sie eine Liste nur der Hersteller zurück, die keine zugehörigen Produkte haben.
ON Hersteller.Code != Produkt.Code_Hersteller
SELECT produkt.hersteller_code
Sie können nicht existieren, da die Beziehung im relationalen Modell 1 zu vielen ist. Dies bedeutet,
dass ein Produkt von mindestens 1 Hersteller hergestellt werden kann.
Zusammenfassende Anfragen
1 Berechnen Sie die Gesamtzahl der Produkte in der Produkttabelle.
SELECT COUNT(*)
VON Produkt
SELECT COUNT(*)
vom Hersteller
SELECT AVG(Preis)
VON Produkt
SELECT MIN(Preis)
VON Produkt
SELECT MAX(Preis)
VON Produkt
7. Nennen Sie den Namen und den Preis des billigsten Produkts.
VON Produkt
BEGRENZUNG 1
8. Nennen Sie den Namen und den Preis des teuersten Produkts.
VON Produkt
BEGRENZUNG 1
SELECT SUM(Preis)
VON Produkt
10. Berechnen Sie die Anzahl der Produkte, die der Hersteller Asus hat.
SELECT COUNT(produkt.code)
ON hersteller.code = produkt.hersteller_code
11. Berechnen Sie den Durchschnittspreis aller Produkte des Herstellers Asus.
SELECT AVG(produkt.preis)
ON hersteller.code = produkt.hersteller_code
12. Berechnen Sie den günstigsten Preis für alle Produkte des Herstellers Asus.
SELECT MIN(produkt.preis)
ON hersteller.code = produkt.hersteller_code
13. Berechnen Sie den teuersten Preis für alle Produkte des Herstellers Asus.
SELECT MAX(produkt.preis)
ON hersteller.code = produkt.hersteller_code
14. Berechnen Sie die Summe aller Produkte des Herstellers Asus.
SELECT SUM(produkt.preis)
FROM Hersteller INNER JOIN Produkt
ON hersteller.code = produkt.hersteller_code
15. Es zeigt den Höchstpreis, den Mindestpreis, den Durchschnittspreis und die Gesamtzahl der
Produkte, die der Hersteller Crucial hat.
ON hersteller.code = produkt.hersteller_code
16. Zeigt die Gesamtzahl der Produkte, die jeder Hersteller hat. Die Liste sollte auch Hersteller
enthalten, die keine Produkte haben. Das Ergebnis zeigt zwei Spalten, eine mit dem Namen des
Herstellers und eine mit der Anzahl der Produkte, die er hat. Sortieren Sie das Ergebnis in
absteigender Reihenfolge nach der Anzahl der Produkte.
ON produkt.hersteller_code = hersteller.code
GROUP BY hersteller.code
ORDER BY 2 ABSTEIGEND
17. Zeigt den Höchstpreis, den Mindestpreis und den Durchschnittspreis für die Produkte jedes
Herstellers. Das Ergebnis zeigt den Namen des Herstellers zusammen mit den gewünschten
Daten an.
ON produkt.hersteller_code = hersteller.code
GROUP BY hersteller.code
18. Zeigt den Höchstpreis, den Mindestpreis, den Durchschnittspreis und die Gesamtzahl der
Produkte von Herstellern mit einem Durchschnittspreis von über 200 €. Es ist nicht erforderlich,
den Namen des Herstellers anzugeben, der Herstellercode reicht aus.
VON Produkt
GROUP BY hersteller_code
19. gibt den Namen jedes Herstellers an, zusammen mit dem Höchstpreis, dem Mindestpreis,
dem Durchschnittspreis und der Gesamtzahl der Produkte von Herstellern mit einem
Durchschnittspreis von über 200 €. Es ist notwendig, den Namen des Herstellers anzugeben.
SELECT Hersteller.Name,
MAX(Produkt.Preis), MIN(Produkt.Preis),
AVG(produkt.preis), COUNT(*)
ON produkt.hersteller_code = hersteller.code
GROUP BY hersteller.code
20. Berechnen Sie die Anzahl der Produkte, deren Preis größer oder gleich 180 € ist.
SELECT COUNT(*)
VON Produkt
21. Berechnen Sie die Anzahl der Produkte jedes Herstellers, deren Preis größer oder gleich 180
€ ist.
ON produkt.hersteller_code = hersteller.code
GROUP BY produkt.hersteller_code
22. Listet den Durchschnittspreis der Produkte jedes Herstellers auf, wobei nur der Code des
Herstellers angegeben wird.
VON Produkt
GROUP BY hersteller_code
23. Listet den Durchschnittspreis der Produkte jedes Herstellers auf, wobei nur der Name des
Herstellers angegeben wird.
ON produkt.hersteller_code = hersteller.code
GROUP BY hersteller.name
24. Nennen Sie die Namen der Hersteller, deren Produkte einen Durchschnittspreis von 150 €
oder mehr haben.
ON produkt.hersteller_code = hersteller.code
GROUP BY hersteller.name
25. Gibt eine Liste mit den Namen der Hersteller zurück, die 2 oder mehr Produkte haben.
ON hersteller.code = produkt.hersteller_code
GROUP BY hersteller.code
27. Liefert eine Liste mit den Namen der Hersteller und der Anzahl der Produkte, die jeder
Hersteller mit einem Preis von 220 € oder mehr anbietet. Die Liste muss die Namen aller
Hersteller enthalten, d.h. wenn es einen Hersteller gibt, der keine Produkte mit einem Preis von
220 € oder mehr anbietet, muss er in der Liste mit einem Wert von 0 in der Anzahl der Produkte
erscheinen.
ON hersteller.code = produkt.hersteller_code
GROUP BY hersteller.code
29. Geben Sie eine Liste mit den Namen der teuersten Produkte der einzelnen Hersteller zurück.
Das Ergebnis sollte drei Spalten enthalten: Produktname, Preis und Name des Herstellers. Das
Ergebnis muss alphabetisch vom niedrigsten bis zum höchsten Wert nach dem Namen des
Herstellers sortiert werden.
ON produkt.hersteller_code = hersteller.code
WHERE produkt.preis =
(
SELECT MAX(Preis)
VON Produkt
1. alle Produkte des Herstellers Lenovo zurückgeben. (ohne Verwendung von INNER JOIN).
WHERE hersteller_code = (
SELECT-Code
vom Hersteller
2. Gibt alle Daten für Produkte zurück, die den gleichen Preis haben wie das teuerste Produkt
des Herstellers Lenovo. (ohne Verwendung von INNER JOIN).
WHERE Preis = (
SELECT MAX(Preis)
VON Produkt
WHERE produkt.hersteller_code = (
SELECT-Code
vom Hersteller
3. Nennen Sie den Namen des teuersten Produkts des Herstellers Lenovo.
SELECT produkt.name
SELECT MAX(Preis)
ON hersteller.code = produkt.hersteller_code
4. Nennen Sie den Namen des billigsten Produkts des Herstellers Hewlett-Packard.
SELECT produkt.name
ON hersteller.code = produkt.hersteller_code
SELECT MIN(Preis)
ON hersteller.code = produkt.hersteller_code
5. Gibt alle Produkte in der Datenbank zurück, deren Preis größer oder gleich dem des teuersten
Produkts des Herstellers Lenovo ist.
SELECT *
VON Produkt
SELECT MAX(Preis)
ON hersteller.code = produkt.hersteller_code
6. Listen Sie alle Produkte des Herstellers Asus auf, deren Preis über dem Durchschnittspreis
aller Asus-Produkte liegt.
SELECT *
SELECT AVG(Preis)
ON hersteller.code = produkt.hersteller_code
8. Liefert das teuerste Produkt, das in der Produkttabelle vorhanden ist, ohne Verwendung von
MAX, ORDER
BY ni LIMIT.
SELECT-Preis
FROM Produkt)
9. Liefert das billigste Produkt, das in der Produkttabelle existiert, ohne MIN, ORDER BY oder
LIMIT zu verwenden.
SELECT-Preis
FROM Produkt)
10. Gibt die Namen der Hersteller zurück, die zugehörige Produkte haben. (Mit ALL oder ANY).
SELECT hersteller_code
FROM Produkt)
11. Gibt die Namen von Herstellern zurück, die keine zugehörigen Produkte haben. (Mit ALL
oder ANY).
SELECT hersteller_code
FROM Produkt)
12. Gibt die Namen der Hersteller zurück, die zugehörige Produkte haben. (Mit IN oder NOT IN).
13. Gibt die Namen von Herstellern zurück, die keine zugehörigen Produkte haben. (Mit IN oder
NOT IN).
14. Gibt die Namen der Hersteller zurück, die zugehörige Produkte haben. (Mit EXISTS oder NOT
EXISTS).
WHERE EXISTS (
SELECT hersteller_code
VON Produkt
SELECT hersteller_code
VON Produkt
Korrelierte Unterabfragen
16. Nennen Sie den Namen jedes Herstellers sowie den Namen und den Preis seines teuersten
Produkts.
ON produkt.hersteller_code = hersteller.code
WHERE produkt.preis =
SELECT MAX(Preis)
VON Produkt
17. Gibt eine Liste aller Produkte zurück, deren Preis größer oder gleich dem Mittelwert von
SELECT *
FROM produkt AS p1
FROM produkt AS p2
SELECT produkt.name
ON hersteller.code = produkt.hersteller_code
SELECT MAX(Preis)
VON Produkt
19. Gibt eine Liste mit allen Namen der Hersteller zurück, die die gleiche Anzahl von Produkten
wie der Hersteller Lenovo haben.
ON hersteller.code = produkt.hersteller_code
GROUP BY hersteller.code
SELECT COUNT(produkt.code)
ON hersteller.code = produkt.hersteller_code