Einführung
In diesem Projekt lernst du, wie du Länder abrufen kannst, die die gleiche Amtssprache wie das Land mit der Ländercode "FRO" sprechen, indem du eine Mehrzeilen-Subquery-Operation in MySQL verwendest.
👀 Vorschau
MariaDB [world]> SOURCE /home/labex/project/getCountryCode.sql;
+-------------+----------+
| CountryCode | Language |
+-------------+----------+
| DNK | Dänisch |
| FRO | Dänisch |
| FRO | Färöisch |
| GRL | Dänisch |
+-------------+----------+
4 Zeilen in Satz (0,002 Sekunden)
🎯 Aufgaben
In diesem Projekt wirst du lernen:
- Wie du MySQL ohne Passwort mit dem Befehl
sudozugreifst - Wie du Daten aus der Datei
world.sqlin die MySQL-Datenbank importierst - Wie du eine SQL-Abfrage mit Mehrzeilen-Subqueries schreibst, um die gewünschten Informationen abzurufen
- Wie du die SQL-Abfrage in der MySQL-Befehlszeilen-Schnittstelle ausführst
🏆 Errungenschaften
Nach Abschluss dieses Projekts wirst du in der Lage sein:
- Den Begriff von Mehrzeilen-Subqueries in SQL zu verstehen
- Spezifische Daten aus einer Datenbank mit komplexen SQL-Abfragen abzurufen
- Dein SQL-Wissen anzuwenden, um reale Probleme beim Abrufen von Daten zu lösen
Zugang zu MySQL und Import der Daten
In diesem Schritt lernst du, wie du mit dem Befehl sudo auf MySQL zugreifst und die world.sql-Daten in die world-Datenbank importierst.
- Öffne ein Terminal und führe den folgenden Befehl aus, um den MySQL-Dienst zu starten:
sudo service mysql start
- Greife über den Befehl
sudoauf die MySQL-Befehlszeilen-Schnittstelle zu:
sudo mysql
- Importiere die
world.sql-Daten in die MySQL-Datenbank:
MariaDB [None]> SOURCE /home/labex/project/world.sql;
Dadurch werden die Daten aus der Datei world.sql in die MySQL-Datenbank importiert.
Jetzt hast du erfolgreich auf MySQL zugegriffen und die erforderlichen Daten importiert. Lass uns zum nächsten Schritt übergehen.
Lande abrufen, die die gleiche Amtssprache wie FRO haben
In diesem Schritt schreibst du eine SQL-Abfrage, um alle Länder abzurufen, die die gleiche Amtssprache wie das Land mit dem Ländercode FRO sprechen.
- Öffne die Datei
getCountryCode.sqlund füge die folgende SQL-Abfrage hinzu:
SELECT cl1.CountryCode, cl1.Language
FROM countrylanguage AS cl1
WHERE cl1.Language IN (
-- Subquery, um die Sprache des Landes mit CountryCode 'FRO' und IsOfficial = 'T' abzurufen
SELECT cl2.Language
FROM countrylanguage AS cl2
WHERE cl2.CountryCode = 'FRO' AND cl2.IsOfficial = 'T'
)
AND cl1.CountryCode IN (
-- Subquery, um den CountryCode der Länder abzurufen, die die gleiche Sprache wie das in FRO haben und IsOfficial = 'T'
SELECT cl3.CountryCode
FROM countrylanguage AS cl3
WHERE cl3.Language IN (
-- Subquery, um die Sprache des Landes mit CountryCode 'FRO' und IsOfficial = 'T' abzurufen
SELECT cl4.Language
FROM countrylanguage AS cl4
WHERE cl4.CountryCode = 'FRO' AND cl4.IsOfficial = 'T'
)
AND cl3.IsOfficial = 'T'
);
Diese Abfrage verwendet eine Mehrzeilen-Subquery, um die Länder abzurufen, die die gleiche Amtssprache wie das Land mit dem Ländercode FRO sprechen.
- Speichere die Datei
getCountryCode.sql.
Jetzt hast du die SQL-Abfrage erstellt, um die gewünschten Informationen abzurufen. Im nächsten Schritt wirst du die Abfrage in MySQL ausführen.
Führe die SQL-Abfrage aus
In diesem Schritt führst du die in der Datei getCountryCode.sql gespeicherte SQL-Abfrage aus.
- Führe die in der Datei
getCountryCode.sqlgespeicherte SQL-Abfrage aus:
MariaDB [world]> SOURCE /home/labex/project/getCountryCode.sql;
Dadurch wird die SQL-Abfrage ausgeführt und die Ergebnisse im Terminal angezeigt.
Die Ausgabe sollte ähnlich dem folgenden aussehen:
+-------------+----------+
| CountryCode | Language |
+-------------+----------+
| DNK | Dänisch |
| FRO | Dänisch |
| FRO | Färöisch |
| GRL | Dänisch |
+-------------+----------+
4 Zeilen in Satz (0,002 Sekunden)
Die Abfrage hat erfolgreich die Länder abgerufen, die die gleiche Amtssprache wie das Land mit dem Ländercode FRO sprechen.
Herzlichen Glückwunsch! Du hast das Projekt abgeschlossen, bei dem du den Bereich von Ländercodes mithilfe einer Mehrzeilen-Subquery-Operation abgefragt hast.
Zusammenfassung
Herzlichen Glückwunsch! Du hast dieses Projekt abgeschlossen. Du kannst in LabEx weitere Labs absolvieren, um deine Fähigkeiten zu verbessern.
