Heim >Datenbank >MySQL-Tutorial >Wie kann ich String-Nummern in MySQL richtig anordnen?

Wie kann ich String-Nummern in MySQL richtig anordnen?

Patricia Arquette
Patricia ArquetteOriginal
2025-01-12 18:47:43455Durchsuche

How Can I Correctly Order String Numbers in MySQL?

Die richtige Art, String-Nummern in MySQL zu sortieren

Wenn in der MySQL-Datenbank Zeichenfolgen fälschlicherweise als Zeichen für die Sortierung behandelt werden, sind die Sortierergebnisse möglicherweise falsch. Um dieses Problem zu lösen, muss die Zeichenfolge für die numerische Sortierung explizit oder implizit in einen Ganzzahltyp konvertiert werden.

Explizite Konvertierung

Spaltenwerte können mit der Funktion CAST() explizit in Ganzzahlen umgewandelt werden:

<code class="language-sql">SELECT col FROM yourtable
ORDER BY CAST(col AS UNSIGNED);</code>

Implizite Konvertierung

Implizite Konvertierungen können mithilfe mathematischer Operationen durchgeführt werden, die Werte in numerische Typen umwandeln:

<code class="language-sql">SELECT col FROM yourtable
ORDER BY col + 0;</code>

Hinweise zur impliziten Konvertierung

Die Konvertierung von Zeichenfolgen in Zahlen in MySQL berücksichtigt Zeichen von links nach rechts:

字符串值 整数值
'1' 1
'ABC' 0
'123miles' 123
'3' 0

Beim Cast wird die numerische Darstellung des Strings zur Sortierung verwendet, was zum gewünschten aufsteigenden Ergebnis führt.

Das obige ist der detaillierte Inhalt vonWie kann ich String-Nummern in MySQL richtig anordnen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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