Heim > Datenbank > MySQL-Tutorial > Hauptteil

Wie ordne ich Ergebnisse in einer MySQL-„IN'-Klausel an?

Susan Sarandon
Freigeben: 2024-11-03 01:49:29
Original
455 Leute haben es durchsucht

How to Order Results in a MySQL

Ergebnisse nach Werten in der MySQL-„IN“-Klausel sortieren

In einer „IN“-Klauselanweisung in MySQL werden Ergebnisse normalerweise in einer zurückgegeben ungeordnete Weise. Es gibt jedoch Möglichkeiten, die Ergebnisse basierend auf den in der Klausel angegebenen Werten zu ordnen.

Verwendung der FIELD()-Funktion

Ein Ansatz besteht darin, die FIELD( )-Funktion, die die Position eines angegebenen Werts in einer Liste zurückgibt. Mithilfe dieser Funktion können Sie die Ergebnisse manuell in der gewünschten Reihenfolge sortieren. Die Syntax lautet wie folgt:

ORDER BY FIELD(column, value1, value2, ..., valueN)
Nach dem Login kopieren

Beispiel

Betrachten Sie das folgende Beispiel:

SELECT * FROM account_records
WHERE id IN (5,2,6,8,12,1)
ORDER BY FIELD(id,5,2,6,8,12,1);
Nach dem Login kopieren

In dieser Abfrage werden die Ergebnisse sein wird in der in den FIELD()-Funktionsargumenten angegebenen Reihenfolge zurückgegeben, bei denen es sich um die Werte in der „IN“-Klausel handelt.

Alternativ: Verwendung einer temporären Tabelle

Wie erwähnt , können Sie auch die Erstellung einer temporären Tabelle in Betracht ziehen, um die gewünschte Sortierung zu erreichen. Die Schritte würden umfassen:

  1. Erstellen einer temporären Tabelle mit den Werten aus der „IN“-Klausel.
  2. Verknüpfen der Haupttabelle mit der temporären Tabelle in der „id“-Spalte.
  3. Sortieren der Ergebnisse basierend auf den Werten in der temporären Tabelle.

Dieser Ansatz kann zwar eine vielseitigere Lösung bieten, ist jedoch im Vergleich zur einfachen Verwendung der FIELD()-Funktion weniger effizient Sortieranforderungen.

Das obige ist der detaillierte Inhalt vonWie ordne ich Ergebnisse in einer MySQL-„IN'-Klausel an?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage