Suche nach ehemaligen Schülern von Biologie-Kursen

MySQLMySQLBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Projekt lernst du, wie du Schülerinnen suchen kannst, die Kurse eines bestimmten Fachbereichs, in diesem Fall des Fachbereichs Biologie, besucht haben. Dies ist eine häufige Aufgabe, die Lehrerinnen bei der Berechnung der Noten von Schüler*innen oft ausführen müssen.

👀 Vorschau

MySQL [edusys]> SOURCE /home/labex/project/multiTableQuery.sql
+-------+--------+-----------+-------+
| ID    | name   | course_id | grade |
+-------+--------+-----------+-------+
| 98988 | Tanaka | BIO-101   | A     |
| 98988 | Tanaka | BIO-301   | NULL  |
+-------+--------+-----------+-------+
2 Zeilen in Satz (0,002 Sekunden)

🎯 Aufgaben

In diesem Projekt wirst du lernen:

  • Wie du die MySQL-Datenbank mit dem Befehl sudo starten und darauf zugreifen kannst
  • Wie du eine SQL-Datei (edusys.sql) in die MySQL-Datenbank importierst
  • Wie du eine SQL-Abfrage schreibst, die mehrere Tabellen (student, course und takes) verknüpft, um die erforderlichen Informationen abzurufen
  • Wie du die SQL-Abfrage ausführst und die resultierende Tabelle anzeigt

🏆 Errungenschaften

Nach Abschluss dieses Projekts wirst du in der Lage sein:

  • Zu verstehen, wie man mit mehreren Datenbanktabellen umgeht, um spezifische Informationen abzurufen
  • Komplexe SQL-Abfragen zu schreiben, die Tabellenverknüpfungen und Datenfilterung beinhalten
  • Dein SQL-Wissen auf reale Szenarien anzuwenden, wie zum Beispiel das Suchen von Schüler*innenakten in einem Kursverwaltungssystem

Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL mysql(("MySQL")) -.-> mysql/BasicKeywordsandStatementsGroup(["Basic Keywords and Statements"]) mysql(("MySQL")) -.-> mysql/DatabaseFunctionsandDataTypesGroup(["Database Functions and Data Types"]) mysql/BasicKeywordsandStatementsGroup -.-> mysql/use_database("Database Selection") mysql/BasicKeywordsandStatementsGroup -.-> mysql/select("Data Retrieval") mysql/BasicKeywordsandStatementsGroup -.-> mysql/source("External Code Execution") mysql/DatabaseFunctionsandDataTypesGroup -.-> mysql/database("DB Function - Info Retrieval") subgraph Lab Skills mysql/use_database -.-> lab-301288{{"Suche nach ehemaligen Schülern von Biologie-Kursen"}} mysql/select -.-> lab-301288{{"Suche nach ehemaligen Schülern von Biologie-Kursen"}} mysql/source -.-> lab-301288{{"Suche nach ehemaligen Schülern von Biologie-Kursen"}} mysql/database -.-> lab-301288{{"Suche nach ehemaligen Schülern von Biologie-Kursen"}} end

Starte MySQL und greife auf die Datenbank zu

In diesem Schritt lernst du, wie du die MySQL-Datenbank startest und ohne Passwort mit dem Befehl sudo darauf zugreifst.

  1. Starte den MySQL-Dienst:
sudo service mysql start
  1. Greife auf die MySQL-Datenbank mit dem Befehl sudo zu:
sudo mysql

Jetzt hast du die MySQL-Datenbank erfolgreich gestartet und darauf zugegriffen.

Importiere die edusys.sql-Datei

In diesem Schritt lernst du, wie du die edusys.sql-Datei in die MySQL-Datenbank importierst.

  1. Stelle sicher, dass du im MySQL-Eingabeaufforderungszugang bist:
MariaDB [(none)]>
  1. Importiere die edusys.sql-Datei:
MariaDB [(none)]> SOURCE /home/labex/project/edusys.sql;

Die edusys.sql-Datei wurde nun in die MySQL-Datenbank importiert.

Schreibe die SQL-Abfrage

In diesem Schritt wirst du die SQL-Abfrage schreiben, um die Studenten-ID, den Namen, die Kurs-ID und die Note aller Studenten zu suchen, die Kurse des Fachbereichs Biologie besucht haben.

  1. Öffne die Datei multiTableQuery.sql und füge die folgende SQL-Abfrage hinzu:
SELECT
    s.ID,
    s.name,
    c.course_id,
    t.grade
FROM
    takes t
    JOIN student s ON t.ID = s.ID
    JOIN course c ON t.course_id = c.course_id
WHERE
    s.dept_name = 'Biology';

Diese Abfrage verknüpft die Tabellen student, course und takes, um die erforderlichen Informationen für Studenten zu erhalten, die Kurse im Fachbereich Biologie besucht haben.

Führe die SQL-Abfrage aus

In diesem Schritt wirst du die in der Datei multiTableQuery.sql gespeicherte SQL-Abfrage ausführen.

  1. Stelle sicher, dass du im MySQL-Eingabeaufforderungszugang bist:
MariaDB [edusys]>
  1. Führe das SQL-Skript aus:
MariaDB [edusys]> SOURCE /home/labex/project/multiTableQuery.sql;

Die Abfrage wird ausgeführt, und die resultierende Tabelle wird mit den Spalten ID, name, course_id und grade angezeigt.

+-------+--------+-----------+-------+
| ID    | name   | course_id | grade |
+-------+--------+-----------+-------+
| 98988 | Tanaka | BIO-101   | A     |
| 98988 | Tanaka | BIO-301   | NULL  |
+-------+--------+-----------+-------+
2 Zeilen in Satz (0,002 Sekunden)
✨ Lösung prüfen und üben

Zusammenfassung

Herzlichen Glückwunsch! Du hast dieses Projekt abgeschlossen. Du kannst in LabEx weitere Übungen absolvieren, um deine Fähigkeiten zu verbessern.