Ausgabe A                                                                          Ausgabe B

 

 

 

Ausgabe C                                                                         Ausgabe D

Frage 1: Wie sieht der richtige Output zu folgender Abfrage aus? Tippe die Query nicht ein. Versuche selbst nachzuvollziehen wie die Ausgabe aussehen sollte.

SELECT Employees.LastName AS Nachname, COUNT(Orders.OrderID) AS Anzahl_Bestellungen 
FROM Orders LEFT JOIN Employees ON Orders.EmployeeID = Employees.EmployeeID
GROUP BY Employees.LastName HAVING Anzahl_Bestellungen > 27

Ausgabe A                                                                        Ausgabe B

 

 

 

Ausgabe C                                                                        Ausgabe D

Hmm... leider stimmt die Antwort nicht. Versuche es noch ein Mal.

Frage 1: Wie sieht der richtige Output zu folgender Abfrage aus? Tippe die Query nicht ein. Versuche selbst nachzuvollziehen wie die Ausgabe aussehen sollte.

SELECT Employees.LastName AS Nachname, COUNT(Orders.OrderID) AS Anzahl_Bestellungen 
FROM Orders LEFT JOIN Employees ON Orders.EmployeeID = Employees.EmployeeID
GROUP BY Employees.LastName HAVING Anzahl_Bestellungen > 27

Ausgabe A                                                                         Ausgabe B

 

 

 

Ausgabe C                                                                        Ausgabe D

Hmm... leider stimmt die Antwort noch nicht. Tippe die Abfrage ein und schaue dir das Ergebnis an.

Die w3schools-Datenbank findest du unter diesem Link.

Frage 1: Wie sieht der richtige Output zu folgender Abfrage aus? 

SELECT Employees.LastName AS Nachname, COUNT(Orders.OrderID) AS Anzahl_Bestellungen 
FROM Orders LEFT JOIN Employees ON Orders.EmployeeID = Employees.EmployeeID
GROUP BY Employees.LastName HAVING Anzahl_Bestellungen > 27

Query A                                                                 Query B

 

 

 

 

Query C                                                                Query D

Super, das ist richtig!

Frage 2: Du möchtest dir in der Tabelle OrderDetails den Produktnamen statt der ID anzeigen lassen. Außerdem soll die Ausgabe nach dem Produktnamen sortiert sein. Wie sieht deine passende SQL Abfrage aus? Tippe die Query nicht ein. Versuche selbst nachzuvollziehen wie die Anfrage aussehen sollte.

SELECT OrderDetails.OrderDetailID, 
OrderDetails.OrderID, Products.ProductName, 
OrderDetails.Quantity FROM OrderDetails 
INNER JOIN Products 
ON Products.ProductID = OrderDetails.ProductID 
ORDER BY Products.ProductName
SELECT OrderDetailID, OrderID, ProductName, 
Quantity FROM OrderDetails 
INNER JOIN Products 
ON Products.ProductID = OrderDetails.ProductID 
ORDER BY ProductName
SELECT OrderDetailID, OrderID, ProductName, 
Quantity FROM OrderDetails 
INNER JOIN Products 
ON ProductID = ProductID 
ORDER BY ProductName
SELECT OrderDetails.OrderDetailID, 
OrderDetails.OrderID, Products.ProductID, 
OrderDetails.Quantity FROM OrderDetails 
INNER JOIN Products ON 
Products.ProductID = OrderDetails.ProductID 
ORDER BY Products.ProductName

Query A                                                                 Query B

 

 

 

 

Query C                                                                Query D

Hmm... leider stimmt die Antwort nicht.

Tipp:

  • Werden tatsächlich die richtigen Spalten ausgewählt?
  • Stimmt die Syntax? Kann die SQL-Abfrage ausgeführt werden?
SELECT OrderDetails.OrderDetailID, 
OrderDetails.OrderID, Products.ProductName, 
OrderDetails.Quantity FROM OrderDetails 
INNER JOIN Products 
ON Products.ProductID = OrderDetails.ProductID 
ORDER BY Products.ProductName
SELECT OrderDetailID, OrderID, ProductName, 
Quantity FROM OrderDetails 
INNER JOIN Products 
ON Products.ProductID = OrderDetails.ProductID 
ORDER BY ProductName
SELECT OrderDetailID, OrderID, ProductName, 
Quantity FROM OrderDetails 
INNER JOIN Products 
ON ProductID = ProductID 
ORDER BY ProductName
SELECT OrderDetails.OrderDetailID, 
OrderDetails.OrderID, Products.ProductID, 
OrderDetails.Quantity FROM OrderDetails 
INNER JOIN Products ON 
Products.ProductID = OrderDetails.ProductID 
ORDER BY Products.ProductName

Frage 2: Du möchtest dir in der Tabelle OrderDetails den Produktnamen statt der ID anzeigen lassen. Außerdem soll die Ausgabe nach dem Produktnamen sortiert sein. Wie sieht deine passende SQL Abfrage aus? Tippe die Query nicht ein. Versuche selbst nachzuvollziehen wie die Anfrage aussehen sollte.

 

 

Query A                                                               Query B

 

 

 

 

Query C                                                               Query D

Hmm... leider stimmt die Antwort noch nicht. 

Tipp: Probiere es mal so:

 

 

 

 

Frage 2: Du möchtest dir in der Tabelle OrderDetails den Produktnamen statt der ID anzeigen lassen. Außerdem soll die Ausgabe nach dem Produktnamen sortiert sein. Wie sieht deine passende SQL Abfrage aus?

SELECT OrderDetails.OrderDetailID, 
OrderDetails.OrderID, Products.ProductName, 
OrderDetails.Quantity FROM OrderDetails 
INNER JOIN Products 
ON Products.ProductID = OrderDetails.ProductID 
ORDER BY Products.ProductName
SELECT OrderDetailID, OrderID, ProductName, 
Quantity FROM OrderDetails 
INNER JOIN Products 
ON Products.ProductID = OrderDetails.ProductID 
ORDER BY ProductName
SELECT OrderDetailID, OrderID, ProductName, 
Quantity FROM OrderDetails 
INNER JOIN Products 
ON ProductID = ProductID 
ORDER BY ProductName
SELECT OrderDetails.OrderDetailID, 
OrderDetails.OrderID, Products.ProductID, 
OrderDetails.Quantity FROM OrderDetails 
INNER JOIN Products ON 
Products.ProductID = OrderDetails.ProductID 
ORDER BY Products.ProductName
SELECT OrderDetails.OrderDetailID, 
OrderDetails.OrderID, Products.ProductName, 
OrderDetails.Quantity FROM OrderDetails 
INNER JOIN Products 
ON Products.ProductID = OrderDetails.ProductID 
ORDER BY Products.ProductName

Super, das ist richtig! Hier gab es sogar zwei richtige Antworten (B und D): 

Masterfrage 3: Du möchtest dir das Bestelldatum aus der Tabelle Orders und den Produktnamen aus der Tabelle Products ausgeben lassen. Versuche die passende SQL Anfrage zu formulieren. Überprüfe, ob dein Output wie unten aussieht.

 

ACHTUNG: Diese Aufgabe ist nicht leicht :P Aber du kannst das schaffen! 

SELECT OrderDetails.OrderDetailID, 
OrderDetails.OrderID, Products.ProductName, 
OrderDetails.Quantity FROM OrderDetails 
INNER JOIN Products 
ON Products.ProductID = OrderDetails.ProductID 
ORDER BY Products.ProductName
SELECT OrderDetailID, OrderID, ProductName, 
Quantity FROM OrderDetails 
INNER JOIN Products 
ON Products.ProductID = OrderDetails.ProductID 
ORDER BY ProductName

Aber Achtung! Query B funktioniert nur, solange es keine gleichen Spaltennamen gibt.

Hmm... leider stimmt die Antwort nicht.

Tipp:

  • Du musst zwei JOINS bilden. Zuerst einen JOIN von Orders zu der Tabelle OrderDetails, um auf die ProduktID zugreifen zu können und dann einen zweiten JOIN zu der Tabelle Products, um auf den Produktnamen zugreifen zu können.
  • Versuche es außerdem mit den Schlüsselwörtern SELECT, FROM, INNER JOIN und ON 

Hmm... leider stimmt die Antwort nicht.

Masterfrage 3: Du möchtest dir das Bestelldatum aus der Tabelle Orders und den Produktnamen aus der Tabelle Products ausgeben lassen. Versuche die passende SQL Anfrage zu formulieren. Überprüfe, ob dein Output wie unten aussieht.

 

ACHTUNG: Diese Aufgabe ist nicht leicht :P Aber du kannst das schaffen! 

Hmm... leider stimmt die Antwort noch nicht.

Tipp: Probiere es mal so:

 

 

 

 

SELECT Orders.OrderDate, Products.ProductName FROM Orders 
INNER JOIN OrderDetails ON Orders.OrderID = OrderDetails.OrderID 
INNER JOIN Products ON OrderDetails.ProductID = Products.ProductID

Masterfrage 3: Du möchtest dir das Bestelldatum aus der Tabelle Orders und den Produktnamen aus der Tabelle Products ausgeben lassen. Versuche die passende SQL Anfrage zu formulieren. Überprüfe, ob dein Output wie unten aussieht.

 

ACHTUNG: Diese Aufgabe ist nicht leicht :P Aber du kannst das schaffen! 

 

 

 

1

10

3

8

Super, das ist richtig!

Frage 4: "Alfreds Futterkiste" verlagert den Firmensitz von Berlin nach Hamburg in die Eifflerstraße 43, PLZ: 22769. Wie viele Kunden hast du nun aus Hamburg?

WEITERE FRAGEN?!

 

 

 

 

1

10

3

8

Hmm... leider stimmt die Antwort nicht.

Tipp:

  • Du findest die Daten in der Tabelle "Customers".
  • Schau dir noch mal die Schlüsselwörter SELECT, COUNT(*), UPDATE, SET, FROM, WHERE   an oder frage deine Mitschüler, wie sie die Aufgabe gelöst haben.

Frage 4: "Alfreds Futterkiste" verlagert den Firmensitz von Berlin nach Hamburg in die Eifflerstraße 43, PLZ: 22769. Wie viele Kunden hast du nun aus Hamburg?

WEITERE FRAGEN?!

 

1

10

3

8

Hmm... leider stimmt die Antwort noch nicht.

Tipp: Probiere es mal so:

 

 

 

 

 

UPDATE Customers 
SET 
Address = "Eifflerstraße 43", 
City = "Hamburg",
PostalCode = "22769" 
WHERE CustomerID = 1

Frage 4: "Alfreds Futterkiste" verlagert den Firmensitz von Berlin nach Hamburg in die Eifflerstraße 43, PLZ: 22769. Wie viele Kunden hast du nun aus Hamburg?

SELECT COUNT(*) 
FROM Customers 
WHERE City = "Hamburg"

WEITERE FRAGEN?!

Super, das ist richtig!

Frage 5: Du arbeitest nicht mehr mit Lieferanten aus den USA zusammen. Damit die Produkte trotzdem geliefert werden, übernimmt " Ma Maison " aus Kanada alle Aufträge. Passe deine Datenbank entsprechend an. Wie viele Produkte werden nun von Ma Maison geliefert und wie viele Lieferanten hast du noch insgesamt?

WEITERE FRAGEN?!

Hmm... leider stimmt die Antwort nicht.

Tipp:

  • Du findest die Daten in den Tabellen "Suppliers" und "Products".
  • Ansonsten schau dir noch mal die Schlüsselwörter SELECT, UPDATE, DELETE, FROM, WHERE, SET, IN und COUNT an oder frage deine Mitschüler, wie sie die Aufgabe gelöst haben.

Frage 5: Du arbeitest nicht mehr mit Lieferanten aus den USA zusammen. Damit die Produkte trotzdem geliefert werden, übernimmt " Ma Maison " aus Kanada alle Aufträge. Passe deine Datenbank entsprechend an. Wie viele Produkte werden nun von Ma Maison geliefert und wie viele Lieferanten hast du noch insgesamt?

WEITERE FRAGEN?!

Hmm... leider stimmt die Antwort noch nicht.

SELECT * FROM Suppliers 
WHERE Country = "USA" OR SupplierName = "Ma Maison"

Tipp: Probiere es mal so:

 

 

 

 

 

 

 

 

 

Frage 5: Du arbeitest nicht mehr mit Lieferanten aus den USA zusammen. Damit die Produkte trotzdem geliefert werden, übernimmt " Ma Maison " aus Kanada alle Aufträge. Passe deine Datenbank entsprechend an. Wie viele Produkte werden nun von Ma Maison geliefert und wie viele Lieferanten hast du noch insgesamt?

SELECT COUNT(*) FROM Suppliers
SELECT COUNT(*) FROM Products WHERE SupplierID = 25
DELETE FROM Suppliers 
WHERE SupplierID IN (2, 3, 16, 19)
UPDATE Products SET SupplierID = 25 
WHERE SupplierID IN (2, 3, 16, 19)

Finde alle Lieferanten aus den USA und den Lieferanten "Ma Maison" (merken)

Passe den Lieferanten an

Lösche alle Lieferanten aus den USA

Wie viele Produkte werden von "Ma Maison" geliefert?

Wie viele Lieferanten hat dein Shop?

WEITERE FRAGEN?!

Super, das ist richtig!

Frage 6: Was ist der durchschnittliche Preis der Produkte (2 Nachkommastellen)?

WEITERE FRAGEN?!

Frage 6: Was ist der durchschnittliche Preis der Produkte (2 Nachkommastellen)?

Hmm... leider stimmt die Antwort nicht.

Tipp:

  • Du findest die Daten in der Tabelle "Products".
  • Ansonsten schau dir noch mal die Schlüsselwörter SELECT, AVG und FROM an oder frage deine Mitschüler, wie sie die Aufgabe gelöst haben.

WEITERE FRAGEN?!

Hmm... leider stimmt die Antwort noch nicht.

Frage 6: Was ist der durchschnittliche Preis der Produkte (2 Nachkommastellen)?

Tipp: Probiere es mal so:

 

 

 

 

SELECT AVG(`Price`) FROM Products

WEITERE FRAGEN?!

Frage 7: Lasse dir die Preise in aufsteigender Reihenfolge ausgeben. Hast du es geschafft?

Super, das ist richtig!

WEITERE FRAGEN?!

Hmm... leider stimmt die Antwort nicht.

Tipp:

  • Du findest die Daten in der Tabelle "Products".
  • Ansonsten schau dir noch mal die Schlüsselwörter SELECT, FROM, ORDER BY und ASC an oder frage deine Mitschüler, wie sie die Aufgabe gelöst haben.

Frage 7: Lasse dir die Preise in aufsteigender Reihenfolge ausgeben. Hast du es geschafft?

WEITERE FRAGEN?!

Hmm... leider stimmt die Antwort noch nicht.

Tipp: Probiere es mal so:

 

 

 

 

SELECT * FROM Products 
ORDER BY Price ASC

Frage 7: Lasse dir die Preise in aufsteigender Reihenfolge ausgeben. Hast du es geschafft?

WEITERE FRAGEN?!

 

 

 

 

112

69

87

55

Frage 8: Aus wie vielen verschiedenen Städten hast du Kunden?

Super, das ist richtig!

WEITERE FRAGEN?!

 

112

69

87

55

Frage 8: Aus wie vielen verschiedenen Städten hast du Kunden?

Hmm... leider stimmt die Antwort nicht.

Tipp:

  • Du findest die Daten in der Tabelle "Customers".
  • Ansonsten schau dir noch mal die Schlüsselwörter SELECT, COUNT, DISTINCT und FROM an oder Frage deine Mitschüler, wie sie die Aufgabe gelöst haben.

WEITERE FRAGEN?!

 

112

69

87

55

Frage 8: Aus wie vielen verschiedenen Städten hast du Kunden?

Hmm... leider stimmt die Antwort noch nicht.

Tipp: Probiere es mal so:

 

 

 

 

SELECT COUNT(DISTINCT City) 
FROM Customers

WEITERE FRAGEN?!

Frage 9: Probiere mal etwas mit der Groß- und Kleinschreibung rum. Funktioniert deine Anfrage auch, wenn du die Schlüsselwörter klein schreibst?

Super, das ist richtig!

WEITERE FRAGEN?!

 

 

Weiter

Ganze genau.
SQL ist case-insensitive, was bedeutet, dass es egal ist, ob du die Befehle groß oder klein schreibst. Aber Achtung! Werte die als Text in der Datenbank abgespeichert sind müssen exakt so geschrieben werden, wie sie in der Datenbank stehen. So zum Beispiel "Denmark".

 

WEITERE FRAGEN?!

 

 

Weiter

Doch! Probiere es noch mal aus! :)
SQL ist tatsächlich case-insensitive, was bedeutet, dass es egal ist, ob du die Befehle groß oder klein schreibst. Aber Achtung! Werte die als Text in der Datenbank abgespeichert sind müssen exakt so geschrieben werden, wie sie in der Datenbank stehen. So zum Beispiel "Denmark".

 

WEITERE FRAGEN?!

 

Was könnte noch interessant sein?

Welche Fragen kannst du mit der Datenbank beantworten?

Wie könntest du deine Datenbank erweitern?

Wie kannst du die Datenbank verändern?

Welche Tabelle kannst du verknüpfen?

Welche schönen Outputs kannst du noch produzieren?

 

Yeah du hast alle Fragen korrekt beantwortet

Ich hoffe der Kurs hat dir mindestens so viel Spaß gemacht, wie mir die Erstellung :)

Viele Grüße *Tonja*

DatenbankenKurs_Vorlage_Quiz_Session#4

By appcamps

DatenbankenKurs_Vorlage_Quiz_Session#4

  • 66

More from appcamps