Detaillierte Erklärung zur Verwendung benutzerdefinierter Parameter in MySQL

Detaillierte Erklärung zur Verwendung benutzerdefinierter Parameter in MySQL

Zu den MySQL-Variablen zählen Systemvariablen und Systemvariablen. Die Lernaufgabe dieses Mal sind benutzerdefinierte Variablen. Zu den Benutzervariablen zählen hauptsächlich lokale Variablen und Sitzungsvariablen.

Die Deklarationsmethode benutzerdefinierter Variablen lautet wie folgt: @var_name, wobei der Variablenname aus Buchstaben, Zahlen, ".", "_" und "$" besteht. Natürlich können Sie beim Verweisen auf eine Zeichenfolge oder einen Bezeichner auch andere Zeichen einschließen (z. B.: @'my-var', @"my-var" oder @my-var).

Benutzerdefinierte Variablen sind Variablen auf Sitzungsebene. Der Gültigkeitsbereich seiner Variablen ist auf die Client-Verbindung beschränkt, in der sie deklariert sind. Wenn die Verbindung des Clients getrennt wird, werden alle seine Sitzungsvariablen freigegeben.

Bei benutzerdefinierten Variablen wird die Groß-/Kleinschreibung nicht beachtet.

Verwenden Sie die SET-Anweisung, um benutzerdefinierte Variablen zu deklarieren:

SET @meine_var = 1; 
SET @meine_var := 1;

Wenn Sie „set“ nicht verwenden, verwenden Sie die Zuweisung :=, da die Verwendung von „=“ als Vergleichsoperator betrachtet werden kann.

Nachfolgend sehen Sie ein Beispiel:

Schreiben Sie eine SQL-Abfrage, um die Punktebewertung zu implementieren. Wenn zwei Punktzahlen gleich sind, sollten auch die beiden Punktzahlränge gleich sein. Beachten Sie, dass die nächste Rangnummer nach einem Gleichstand der nächste aufeinanderfolgende ganzzahlige Wert sein sollte. Mit anderen Worten, es sollten keine „Löcher“ zwischen den Zeilen und Spalten vorhanden sein.

+—-+——-+
| ID | Punktzahl |
+—-+——-+
| 1 | 3,50 |
| 2 | 3,65 |
| 3 | 4,00 |
| 4 | 3,85 |
| 5 | 4,00 |
| 6 | 3,65 |
+—-+——-+

Beispielsweise sollte Ihre Abfrage anhand der Score-Tabelle oben den folgenden Bericht erzeugen (sortiert nach dem höchsten Score):

+——-+——+
| Punktzahl | Rang |
+——-+——+
| 4,00 | 1 |
| 4,00 | 1 |
| 3,85 | 2 |
| 3,65 | 3 |
| 3,65 | 3 |
| 3,50 | 4 |
+——-+——+

Abfrageanweisung:

wähle Score, @rank := @rank + (@pre <> (@pre:=Score)) Rang 
von Scores, (SELECT @rank := 0,@pre := -1) INIT 
ORDER BY Punktzahl DESC

Notiz:

@rank gibt die Rangfolge der Noten an

@pre gibt den Punktestand der vorherigen Person an

Wenn die Punktzahl sich von der vorherigen unterscheidet, gilt @rank = @rank + 1, andernfalls gilt @rank = Rang.

Initialisieren Sie @rank auf 1 und @pre auf -1.

Die experimentellen Ergebnisse sind:

Die oben aufgeführte ausführliche Erklärung zur Verwendung benutzerdefinierter Parameter in MySQL ist der gesamte Inhalt, den der Herausgeber mit Ihnen teilt. Ich hoffe, dass er Ihnen als Referenz dienen kann. Ich hoffe auch, dass Sie 123WORDPRESS.COM unterstützen werden.

Das könnte Sie auch interessieren:
  • Detaillierte Erläuterung der Definition und Verwendung von in MySQL gespeicherten Funktionen (benutzerdefinierten Funktionen)
  • Detaillierte Erläuterung der grundlegenden Verwendung von MySql-Stored-Procedure-Parametern
  • Detaillierte Erläuterung der MySQL-Konfigurationsparameteroptimierung

<<:  Vue.js implementiert eine Timeline-Funktion

>>:  Analyse der Linux-Bootsystemmethoden

Artikel empfehlen

So verwenden Sie „Explain“, um den SQL-Ausführungsplan in MySql abzufragen

Der Befehl „Explain“ ist die primäre Möglichkeit,...

Erläuterung der Faktoren, die die Datenbankleistung in MySQL beeinflussen

Eine Geschichte über die Datenbankleistung Währen...

jQuery implementiert den Fall der Schriftgrößenanpassung

In diesem Artikel wird der spezifische Code von j...

JavaScript erklärt die Kapselung und Verwendung von Zeitlupenanimationen

Durchführung von Prozessanalysen (1) Wie rufe ich...

So verwenden Sie MySQL zur Abdeckung von Index- und Tabellenrückgabe

Zwei Hauptkategorien von Indizes Verwendete Speic...

Wissen Sie, wie viele Verbindungen ein Linux-Server verarbeiten kann?

Vorwort Sehen wir uns zunächst an, wie eine TCP-V...

CSS3-Textanimationseffekte

Wirkung html <div Klasse="sp-container&qu...

Ein kurzes Verständnis der Unterschiede zwischen MySQL InnoDB und MyISAM

Vorwort MySQL unterstützt viele Arten von Tabelle...

Design Association: Warum haben Sie am falschen Ort gesucht?

Ich bin vor ein paar Tagen mit dem Bus zur Arbeit...

Grafisches Tutorial zur Installation und Konfiguration von MySQL 8.0.18

Lernziele: Lernen Sie, MySQL-Datenbanken unter de...

Detaillierte Erklärung der wechselseitigen Verwendung von Ref in React

Inhaltsverzeichnis 1. Lassen Sie uns zunächst erk...

Detaillierte Schritte zum Erstellen eines Vue-Scaffolding-Projekts

Vue-Gerüst -> vue.cli Erstellen Sie schnell ei...

Detaillierte Erklärung der JavaScript-Datentypen

Inhaltsverzeichnis 1. Literale 1.1 Numerische Lit...