Unter w3schools.com findet man ein sehr ausführliches SQL-Tutorial. Zusätzlich gibt es eine recht umfangreiche Datenbank, an der direkt Abfragen getestet werden können: Abfrageseite.
Customers (CustomerID, CustomerName, ContactName, Address, City, PostalCode, Country) Categories (CategoryID, CategoryName, Description) Employees (EmployeeID, LastName, FirstName, BirthDate, Photo, Notes) OrderDetails (OrderDetailID, ↑OrderID, ↑ProductID, Quantity) Orders (OrderID, ↑CustomerID, ↑EmployeeID, OrderDate, ↑ShipperID) Products (ProductID, ProductName, ^SupplierID, ↑CategoryID, Unit, Price) Shippers (ShipperID, ShipperName, Phone) Suppliers (SupplierID, SupplierName, ContactName, Address, City, PostalCode, Country, Phone)
Die folgenden Abfragen beziehen sich auf die Datenbank bei w3schools (und sind im Unterricht entstanden).
Aufgabe 1
- Gib CustomerName, ContactName und Country aller Kunden aus UK aus.
- Gib alle Felder von Customers aus, die als Country France oder Spain haben.
- Gib City und Country aus und zwar alphabetisch sortiert nach City.
- Gib die Employees rückwärts sortiert aus (Nachname).
- Gib alle Employees aus, deren EmployeeID zwischen 1 und 4 ist.
- Gib Lieferantenname, Ort und Land aus, von allen Lieferanten, deren Land mit U startet.
- Gib alle Produkte aus, deren Preis kleiner als 50 and größer als 20 ist.
- Wähle alle Kategorien mit Kategorie ID 2, 4 oder 6 aus
- Alle ProduktIDs und Namen der Produkte, die zwischen 10$ und 30$ kosten.
- Ein Foto und das Geburtsdatum aller Mitarbeiter, deren Nachname mit K beginnt.
- Gib alle Produkte, die der Kategorie 4 und 2 angehören an.
- Gesucht sind alle Bestellungen, die im Juli 1996 eingegangen sind (OrderID, CustomerID und Date; neueste zuerst)
- Gib alle Suppliers aus Frankreich aus.
- Alle Produkte, die der Kategorie 2 angehören oder mehr als 10$ kosten.
Aufgabe 2
- Aggregatfunktionen
- Wie oft wurde das Produkt mit der ID 51 bestellt ?
- Was ist der Durchschnittspreis aller Produkte der Kategorie 2?
- Wie viele verschiedene Artikel kann man bestellen?
- Was ist der Durchschnittspreis aller Artikel der Kategorie „Seafood“(8)?
- Wie viele Kunden leben in Spain?
- Wie viel wurde bei Order 10255 bestellt?
- GROUP BY
- Wie viele Produkte hat die Kategorie „Beverages“ (ID =1)?
- Wie viele Kunden leben jeweils im Gleichen Land?
- Wie viele Produkte werden vom Zusteller „New Orleans Cajun Delights“ (2) geliefert?
- Wie viele Produkte haben den gleichen Preis ?
- Wie viele Kunden wohnen jeweils in der gleichen Stadt?
- HAVING
- Welche Kunden haben bereits mehr als 5 Bestellungen getätigt?
- In welchen Ländern sitzt nur ein Kunde?
- Welcher Supplier hat schon mehr als 4 Produkte registriert?
- Zu welchem Land gibt es mehr als 2 Kunden?
- Wie viele Produkte werden von Zusteller „Tokyo Traders“(4) geliefert und sind teurer als 20$?
- An welchen Tagen wurden mehrere Angestellte geboren?
- Welche Produkte sind Teil von weniger als 10 Bestellungen?
- Wie viele Produkte haben einen Preis unter 10$?
Aufgabe 3
- Wie viele Lieferanten liefern aus unterschiedlichen Städten Produkte.
- Zeige den Lieferantennamen, die Stadt aus der der Lieferant kommt und den Produktnamen an, wenn die Lieferantenstadt nicht mit L beginnt.
- Zeige den Produktnamen und die Kategorie für alle Produkte mit einem Preis zwischen 20 und 30 an.
- Gibt den Produktnamen, den Kategorienamen und den Preis für das Produkt mit dem höchsten Preis aus.
- Wie viele Bestellungen hat jeder einzelne Spediteur?
- Zeige alle Mitarbeiter, die mehr als 10 Bestellungen verwalten.
- Zeige den Namen (Customers) und die bestellten Produkte an; incl. der Customers ohne Bestellung.
- Erweiterung zu g: auch nicht bestellte Produkte gesucht (w3scholls.com verarbeitet kein RIGHT JOIN und FULL JOIN … J)
- Welcher Kunde wurde bereits von welchem Shipper beliefert?
- Welche Kunden und welche Supplier kommen aus der gleichen Stadt?
- Welche Employees haben an ihrem Geburtstag eine Bestellung bearbeitet?
- Wie viele Produkte hat jede Kategorie (Name)?
- Die Beschreibung für die Kategorie aller bestellten Produkte, inkl. der nicht bestellten Produkte, Produktname.
- Die Fotos aller Angestellten, welche Produkte mit einem Preis von über 500€ verwaltet haben.
- Gib die Summer des Preises aller Bestellungen an.
- Die durchschnittlichen Preise der Produkte einer Kategorie.
Aufgabe 4
Unterabfragen … (manchmal auch anders möglich) … Lösungen
- Welches Produkt ist günstiger als alle Getränke?
- Gibt es Bestellungen, die genauso viel kosten wie (andere) Einzelprodukte?
- Gib alle Bestellungen aus, die von dem jüngsten Mitarbeiter bearbeitet wurden.
- Gib alle Supplier in der Stadt aus, die von den dritt-meisten Kunden bewohnt wird.
- Mit welchem Lieferanten wurden die Bestellungen vom Kunden mit der Customer_ID 17 geliefert?
- Wie heißt der Mitarbeiter, welcher für die Bestellung mit der OrderID=10381 zuständig war und was sind seine Qualifikationen (Notes)?
- Welches ist das teuerste Produkt eines Zulieferers?
- Wie viele Produkte liefert der Zulieferer XY?
- Geben Sie die Bestellnummer (OrderID) und die Bestellmenge (Quantity) aller Bestellungen aus, bei denen die Bestellmenge eines Artikels über dem Durchschnitt liegt.
- Geben Sie jeweils den Preis des teuersten Produktes aus, welches ein bestimmter Lieferant (Supplier) liefert. Zum Lieferant sollen zusätzlich der Name und die Stadt angegeben werden.
- Gesucht sind alle Kunden, die in der gleichen Stadt wohnen, wie die Supplier mit drei aufeinander folgenden Fünfen in der Telefonnummer.
- Gesucht sind alle Produkte, bei denen der Supplier in der gleichen Stadt wohnt wie ein Kunde.
- Gibt es einen Customer der den gleichen Namen wie ein Supplier hat?
- Wie viele Produkte liefert der Supplier mit dem Namen ‚Aux joyeux ecclésiastiques‘?