Rechte äußere Verknüpfungsabfrage für Benutzerlevel

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 eine Datenbank, Tabellen erstelst und eine Rechte äußere Verknüpfungsabfrage durchführst, um das Niveau aller Benutzer anhand ihrer Punkte zu erhalten.

👀 Vorschau

Vorschaubild des Datenbankprojekts

🎯 Aufgaben

In diesem Projekt wirst du lernen:

  • Wie du MySQL ohne Passwort über den Befehl sudo zugängst
  • Wie du eine Datenbank und Tabellen erstellst
  • Wie du Daten in die Tabellen einfügst
  • Wie du eine Rechte äußere Verknüpfungsabfrage durchführst, um das Niveau aller Benutzer zu erhalten

🏆 Errungenschaften

Nach Abschluss dieses Projekts wirst du in der Lage sein:

  • Die Grundlagen der MySQL-Datenbankverwaltung zu verstehen
  • Tabellen in einer Datenbank zu erstellen und zu manipulieren
  • Komplexe SQL-Abfragen wie Rechte äußere Verknüpfungen durchzuführen, um Daten abzurufen
  • Dein SQL-Wissen auf reale Szenarien wie die Benutzerverwaltung in einer Video- oder Audioanwendung anzuwenden

Zugang zu MySQL und Erstellung der Datenbank

In diesem Schritt lernst du, wie du MySQL über den Befehl sudo ohne Passwort zugängst und die Datenbank vip erstellst.

  1. Starte den MySQL-Dienst:
sudo service mysql start
  1. Zugang zu MySQL:
sudo mysql
  1. Erstelle die Datenbank vip:
CREATE SCHEMA vip CHARSET UTF8;
USE vip;

Jetzt hast du die Datenbank vip erfolgreich erstellt.

Tabellen erstellen und Daten einfügen

In diesem Schritt wirst du die Tabellen level und user erstellen und Daten in sie einfügen.

  1. Erstelle die Tabelle level:
CREATE TABLE level (
name VARCHAR(64) NOT NULL,
low INT NOT NULL,
high INT NOT NULL
);
  1. Füge Daten in die Tabelle level ein:
INSERT INTO level VALUES
('L1', 0, 9),
('L2', 10, 99),
('L3', 100, 499),
('L4', 500, 999);
  1. Erstelle die Tabelle user:
CREATE TABLE user (
name VARCHAR(32) NOT NULL,
score INT NOT NULL
);
  1. Füge Daten in die Tabelle user ein:
INSERT INTO user VALUES
('Jane', 5),
('John', 15),
('Mary', 155),
('David', 9999);

Jetzt hast du die Tabellen erfolgreich erstellt und Daten in sie eingefügt.

Rechte äußere Verknüpfungsabfrage ausführen

In diesem Schritt wirst du eine Rechte äußere Verknüpfungsabfrage durchführen, um das Niveau aller Benutzer abzurufen.

  1. Öffne die Datei getLevel.sql und füge die folgende Abfrage hinzu:
SELECT u.name AS `User`, l.name AS `Level`
FROM `level` l
RIGHT JOIN `user` u ON u.score BETWEEN l.low AND l.high;

Diese Abfrage führt eine Rechte äußere Verknüpfung zwischen den Tabellen level und user durch und ruft den Benutzernamen und den entsprechenden Niveau-Namen ab.

  1. Speichere die Datei getLevel.sql.

Die Abfrage ausführen

In diesem Schritt wirst du das Skript getLevel.sql in MySQL ausführen.

  1. Führe das Skript aus:
SOURCE /home/labex/project/getLevel.sql;

Du solltest die folgende Ausgabe sehen:

MariaDB [vip]> SOURCE /home/labex/project/getLevel.sql;
+-------+-------+
| User  | Level |
+-------+-------+
| Jane  | L1    |
| John  | L2    |
| Mary  | L3    |
| David | NULL  |
+-------+-------+
4 rows in set (0.000 sec)

Die Ausgabe zeigt den Benutzernamen und den entsprechenden Niveau-Namen für jeden Benutzer. Wenn der Score eines Benutzers nicht innerhalb eines der Niveaubereiche fällt, wird das Niveau als NULL angezeigt.

Herzlichen Glückwunsch! Du hast das Projekt erfolgreich abgeschlossen, indem du die Datenbank, die Tabellen erstellt, Daten eingefügt und eine Rechte äußere Verknüpfungsabfrage durchgeführt hast, um das Niveau aller Benutzer abzurufen.

✨ 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.