Herausforderung: Autoren- und Buchinformationen

MySQLMySQLBeginner
Jetzt üben

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

Einführung

Ein Bibliothek-Datenbankadministrator benötigt Hilfe bei der Erstellung eines Berichts, der Informationen aus zwei Tabellen kombiniert. Die Bibliothek verfügt über separate Tabellen für Autoren und ihre Bücher, und es wird eine Abfrage benötigt, die in einer einzigen Ansicht die Buchtitel neben den Autorenamen anzeigt.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL mysql(("MySQL")) -.-> mysql/BasicKeywordsandStatementsGroup(["Basic Keywords and Statements"]) sql(("SQL")) -.-> sql/DataManipulationandQueryingGroup(["Data Manipulation and Querying"]) mysql(("MySQL")) -.-> mysql/DatabaseFunctionsandDataTypesGroup(["Database Functions and Data Types"]) sql(("SQL")) -.-> sql/AdvancedDataOperationsGroup(["Advanced Data Operations"]) mysql/BasicKeywordsandStatementsGroup -.-> mysql/use_database("Database Selection") mysql/BasicKeywordsandStatementsGroup -.-> mysql/select("Data Retrieval") sql/DataManipulationandQueryingGroup -.-> sql/order_by("ORDER BY clause") mysql/DatabaseFunctionsandDataTypesGroup -.-> mysql/date("Date Type") sql/AdvancedDataOperationsGroup -.-> sql/join("JOIN operations") sql/AdvancedDataOperationsGroup -.-> sql/date_time_functions("Date and Time functions") subgraph Lab Skills mysql/use_database -.-> lab-418296{{"Herausforderung: Autoren- und Buchinformationen"}} mysql/select -.-> lab-418296{{"Herausforderung: Autoren- und Buchinformationen"}} sql/order_by -.-> lab-418296{{"Herausforderung: Autoren- und Buchinformationen"}} mysql/date -.-> lab-418296{{"Herausforderung: Autoren- und Buchinformationen"}} sql/join -.-> lab-418296{{"Herausforderung: Autoren- und Buchinformationen"}} sql/date_time_functions -.-> lab-418296{{"Herausforderung: Autoren- und Buchinformationen"}} end

Erstellen eines kombinierten Autoren-Bücher-Berichts

Aufgaben

  • Stellen Sie eine Verbindung zur MySQL-Datenbank als Root-Benutzer her.
  • Verwenden Sie die library-Datenbank.
  • Schreiben Sie eine Abfrage, die Daten aus beiden Tabellen kombiniert, um folgende Informationen anzuzeigen:
    • Buchtitel
    • Autorenname
    • Erscheinungsjahr
  • Die Ergebnisse sollten nach dem Erscheinungsjahr sortiert werden (neueste zuerst).
  • Speichern Sie die Ergebnisse in einer Datei namens author_books.txt im Verzeichnis ~/project.

Anforderungen

  • Alle Operationen müssen im Verzeichnis ~/project durchgeführt werden.
  • Die Abfrage muss die Tabellen authors und books verbinden.
  • Alle Bücher und ihre entsprechenden Autoren müssen enthalten sein.
  • Die Ergebnisse müssen genau drei Spalten in folgender Reihenfolge anzeigen: Titel, Autorenname, Erscheinungsjahr.
  • Das Erscheinungsjahr muss als Zahl angezeigt werden.
  • Die Ausgabe muss in einer Datei namens author_books.txt im Verzeichnis ~/project gespeichert werden.

Beispiel

Nachdem Sie die richtige Abfrage geschrieben und die Ergebnisse gespeichert haben, können Sie die Ausgabe überprüfen:

cat ~/project/author_books.txt
+------------------------+--------------+------------------+
| title                  | name         | publication_year |
+------------------------+--------------+------------------+
| Tech Trends            | Maria Garcia |             2023 |
| Digital Innovation     | Robert Chen  |             2022 |
| SQL Mastery            | Jane Smith   |             2021 |
| Database Design Basics | Jane Smith   |             2020 |
+------------------------+--------------+------------------+
✨ Lösung prüfen und üben

Zusammenfassung

In dieser Herausforderung haben Sie gelernt, eine Abfrage zu erstellen, die Daten aus mehreren Tabellen mithilfe von INNER JOIN in MySQL kombiniert. Die gezeigten Fähigkeiten umfassen das Verbinden von Tabellen über ihre Beziehungsfelder, das Auswählen bestimmter Spalten aus mehreren Tabellen und das Sortieren der Ergebnisse. Diese grundlegenden Fähigkeiten bei JOIN-Operationen sind für die Arbeit mit relationalen Datenbanken unerlässlich und werden häufig bei der Abfrage von Daten aus mehreren verwandten Tabellen eingesetzt.