Heim > Datenbank > MySQL-Tutorial > Wie kann ich MySQL-Zeilen numerisch sortieren, wenn das Sortierfeld hybride text-numerische Daten enthält?

Wie kann ich MySQL-Zeilen numerisch sortieren, wenn das Sortierfeld hybride text-numerische Daten enthält?

Susan Sarandon
Freigeben: 2024-12-29 03:14:10
Original
863 Leute haben es durchsucht

How Can I Sort MySQL Rows Numerically When the Sort Field Contains Hybrid Text-Numeric Data?

Extrahieren von Zahlen aus hybriden text-numerischen Feldern in MySQL

Die Herausforderung entsteht beim Umgang mit Spalten, die eine Mischung aus Text und numerischen Werten enthalten . In solchen Fällen können herkömmliche Sortiermethoden basierend auf der Zeichenreihenfolge zu einer falschen numerischen Reihenfolge führen.

Um dieses Problem zu beheben und basierend auf den eingebetteten Zahlen zu sortieren, können Sie die folgende MySQL-Abfrage nutzen:

SELECT field,CONVERT(SUBSTRING_INDEX(field,'-',-1),UNSIGNED INTEGER) AS num
FROM table
ORDER BY num;
Nach dem Login kopieren

Diese Abfrage führt die folgenden Schritte aus:

  • SUBSTRING_INDEX() extrahiert die Nummer aus das Feld, indem es am letzten Bindestrich (-) geteilt wird.
  • CONVERT() konvertiert die extrahierte Zahl in eine vorzeichenlose Ganzzahl und stellt sicher, dass sie als numerischer Wert behandelt wird.
  • ORDER BY num sortiert die Zeilen basierend auf der extrahierten und konvertierten Zahl Feld.

Mit dieser Methode können Sie die Zeilen effektiv basierend auf den eingebetteten Zahlen sortieren, unabhängig vom vorangehenden Text im Feld. Beachten Sie, dass hierbei davon ausgegangen wird, dass die Nummer immer am Ende des Felds steht, getrennt durch einen Bindestrich (-).

Das obige ist der detaillierte Inhalt vonWie kann ich MySQL-Zeilen numerisch sortieren, wenn das Sortierfeld hybride text-numerische Daten enthält?. 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