Heute dreht sich alles um die vier Grundbefehle in SQL:
INSERT, SELECT, UPDATE, DELETE
Aufgaben
Mögliche Lösung:
www.appcamps.de
INSERT INTO Customers VALUES (10000, 'Carne de Mamacita', 'Maria Gonzales','Gran Via de les Corts 660', 'Barcelona','08010','Spain')
INSERT INTO Customers VALUES (10001, 'SKANDINAVIUM', 'Olaf Andersson','Blasieholms 4A', 'Stockholm','111 48','Sweden')
INSERT INTO Customers VALUES ('Terima Kasih', 'Wayan Master')
INSERT INTO Customers VALUES (1,'Belgien Beer', 'Dawid Madson', 'Wordaround 4','Brüssel','333','Belgien')
Aufgabe
Name: Tarek Fischer
Geburtstag: 12/30/1992
Bild: tarekFischer92.pic
Notizen: Absolvent. Bachelor. Probezeit 6 Monate.
Mögliche Lösung:
www.appcamps.de
INSERT INTO Employees (LastName,FirstName, BirthDate, Photo, Notes)
VALUES ('Fischer', 'Tarek','12/30/1992', 'tarekFischer92.pic', 'Absolvent.Bachelor.Probezeit 6 Monate.')
Aufgabe
Tipp: Du musst dir die passende EmployeeID raussuchen. Anna hat in dem Beispiel die ID 11.
Name: Tarek Fischer
Geburtstag: 11/30/1992
Bild: tarekFischer92.pic
Notizen: Absolvent. Bachelor. Probezeit 6 Monate.
Mögliche Lösung:
www.appcamps.de
UPDATE Employees SET BirthDate = '11/30/1992' WHERE employeeid = 12
Aufgabe
DELETE FROM Employees WHERE EmployeeID = 12
Name: Tarek Fischer
Geburtstag: 11/30/1992
Bild: tarekFischer92.pic
Notizen: Absolvent. Bachelor. Probezeit 6 Monate.
Mögliche Lösung:
www.appcamps.de
DELETE FROM Employees WHERE employeeid = 12
Aufgabe
Auf der nächsten Seite findest du mögliche Antworten. Überleg aber zuerst selbst, bevor du weiter klickst.
Mögliche Lösung:
www.appcamps.de
Der Kunde mit der ID "9999" bestellt am 3. August 2017. Die Bestellung wird von dem Mitarbeiter mit der ID "12" betreut und der Spediteur hat die ID "2"
Anders ausgedrückt: Der Kunde mit der ID "9999" bestellt "20 Mal" das Produkt mit der ID "2". Die Bestellung wird am "08/03/2017" aufgenommen und von dem Mitarbeiter mit der ID "12" bearbeitet. Der involvierte Spediteur hat die ID "2".
Bei der Bestellung wurde 20 Mal das Produkt mit der ID "2" geordert.
Tipp: Um die richtigen Details den richtigen Bestellungen zuzuweisen, musst du die entsprechende OrderID nachschauen.
Aufgabe
Auf den nächsten Folien findest du Übungen. Viel Spaß dabei!
Mögliche Lösung:
www.appcamps.de
INSERT INTO Orders (customerid, employeeid, OrderDate, shipperid)
VALUES (9999,2, '08/03/2017',2)
INSERT INTO OrderDetails (productid, Quantity)
VALUES (2, 20)
Aufgabe
Auf der nächsten Seite findest du eine mögliche Lösung zu Letzterem. Überleg aber zuerst selbst, bevor du weiter klickst.
Der Kunde mit der OrderID 99999 bestellt 20 Mal das Produkt mit der ID 2 (Chang), 100 Mal das Produkt mit der ID 10 (Ikura) und 30 Mal das Produkt mit der ID 14 (Tofu)
Mögliche Lösung:
www.appcamps.de
INSERT INTO OrderDetails
(orderid, productid, quantity)
VALUES (99999,2, 20), (99999,10,100), (99999,14,30)
Aufgaben
UPDATE Products
SET Price = 25
WHERE Price > 25
Mögliche Lösung:
Durch die Query wird der Preis von 28 Produkten auf 25 gesetzt. Das ist jedoch erst sichtbar, wenn man die Tabelle Products aufruft, in der nun kein Product einen höheren Preis als 25 hat.
www.appcamps.de
UPDATE Products
SET Price = 25 WHERE Price > 25
SELECT * FROM Products
Aufgaben
Ändert den Preis für alle Zeilen auf 25, wenn der aktuelle Preis 20, 21, 22, 23 oder 24 beträgt.
Mögliche Lösung:
Ändert den Mitarbeiter für alle Bestellungen, wo die Mitarbeiterin Margaret Peacock und der Spediteur United Package ist auf Andrew Fuller.
www.appcamps.de
UPDATE Products
SET Price = 25 WHERE Price IN (20,21,22,23,24)
UPDATE Orders
SET employeeid = 2 WHERE employeeid = 4 AND shipperid = 2
Lösche alle Kunden (aus Mexiko) mit der Postleitzahl 05021.
Aufgaben
Löscht die Mitarbeiter mit den IDs 2, 4 und 10.
Mögliche Lösung:
www.appcamps.de
DELETE FROM Customers WHERE PostalCode = '05021' #oder DELETE FROM Customers WHERE City = 'Mexico D.F.' AND PostalCode = '05021'
DELETE FROM Employees WHERE employeeid IN (2,4,10)