Praktikumsanleitung (Lösung)
Abschlussbedingungen
Datenbanken
Bei den Ergebnissen kommt es primär auf die zurückgegebenen Zeilen an. Diese müssen übereinstimmen.
Ob Sie bei dem SELECT
einen Stern, oder konkrete Spalten angegeben haben ist aber egal.
Abfragen mit SELECT
Ermitteln Sie:
- Alle Produkte (
Products
)
SELECT * FROM Products
- Alle Kategorien (
Categories
)
SELECT * FROM Categories
Filtern mit WHERE
- Welche Lieferant (
Supplier
) hat Sitz (Country
) in den USA?
SELECT * FROM Suppliers
WHERE Country = 'USA'
- Welche Produkte werden von diesem Lieferanten angeboten? Lösen Sie die Aufgabe…
- …mit logischen Operationen. Also AND bzw. OR
SELECT * FROM Products WHERE
SupplierID = 2 OR
SupplierID = 3 OR
SupplierID = 16 OR
SupplierID = 19
- …mit IN (Liste)
SELECT * FROM Products
WHERE SupplierID IN (2, 3, 16, 19);
- …mit IN (Subquery)
SELECT * FROM Products
WHERE SupplierID IN (
SELECT SupplierID FROM Suppliers
WHERE Country = 'USA'
);
- Welche der Produkte von den gefilterten Lieferanten sind Getränke (
Beverages
)?
SELECT * FROM Products
WHERE SupplierID IN (2, 3, 16, 19) AND CategoryID = 1;
Eine Inventur mit WHERE durchführen
Welche Produkte…
- …sind ausverkauft?
SELECT ProductID, ProductName, UnitsInStock
FROM Products
WHERE UnitsInStock = 0
- …sind ausverkauft und werden noch vertrieben?
SELECT ProductID, ProductName, UnitsInStock, Discontinued
FROM Products
WHERE UnitsInStock = 0 AND Discontinued = 0
- …werden momentan nachbestellt?
SELECT ProductID, ProductName, UnitsOnOrder
FROM Products
WHERE UnitsOnOrder > 0
- …müssen nachbestellt werden?
SELECT ProductID, ProductName, UnitsInStock, UnitsOnOrder, ReorderLevel
FROM Products
WHERE UnitsInStock + UnitsOnOrder < ReorderLevel
Sortieren mit ORDER BY
Ermitteln Sie (Spalte UnitPrice
)…
- …das günstigste Produkt
SELECT ProductName, UnitPrice
FROM Products
ORDER BY UnitPrice
- …das teuerste Produkt
SELECT ProductName, UnitPrice
FROM Products
ORDER BY UnitPrice DESC
- …die teuersten fünf Produkte
SELECT ProductName, UnitPrice
FROM Products
ORDER BY UnitPrice DESC
LIMIT 5
Gruppieren mit GROUP BY
Ermitteln Sie…
- …die Anzahl an Produkten je Kategorie
SELECT CategoryID, Count(*) Anzahl
FROM Products
GROUP BY CategoryID
- …das teuerste Produkt je Kategorie
SELECT CategoryID, Max(UnitPrice) Höchstpreis
FROM Products
GROUP BY CategoryID
- …den Durchschnittspreis je Kategorie
SELECT CategoryID, Avg(UnitPrice) Durchschnittspreis
FROM Products
GROUP BY CategoryID
- …alle Kategorien mit mindestens 10 Produkten
SELECT CategoryID, Count(*) Anzahl
FROM Products
GROUP BY CategoryID
HAVING Anzahl >= 10
Zuletzt geändert: Montag, 4. Januar 2021, 10:42