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

JavaScript-Grundlagen: Funktion zur sofortigen Ausführung

Inhaltsverzeichnis Funktionsformat sofort ausführ...

Beispiel-Tutorial für MySQL-Datenbanktransaktionen

Inhaltsverzeichnis 1. Was ist eine Transaktion? 2...

Verwenden des radialen Farbverlaufs in CSS zum Erzielen eines Karteneffekts

Vor einigen Tagen erhielt eine Kollegin ein Punkt...

Erstellen Sie mit Flutter eine verschiebbare Stapel-Widget-Funktion

Dieser Beitrag konzentriert sich auf ein streng g...

JavaScript zum Erzielen eines einfachen Drag-Effekts

In diesem Artikel wird der spezifische JavaScript...

So verwenden Sie vw+rem für das mobile Layout

Verwenden Sie immer noch das flexible Rem-Layout?...

HTML implementiert die Funktion zur Erkennung der Eingabevervollständigung

Verwenden Sie „onInput(event)“, um festzustellen,...

Beispielcode der Uniapp Vue- und NVUE-Karussellkomponenten

Der Vue-Teil ist wie folgt: <Vorlage> <K...