Suche bestimmte Sortierungsfunktion
Chris
- datenbank
0 Vinzenz Mai0 Rouven
Nabend,
ich habe in meiner MySQL-Datenbank eine Spalte mit verschiedenen Zahlenwerten, zb:
15
151
152
16
17
Und ich möchte diese nun sortieren - und zwar nicht, dass das Ergebnis so aussieht: 15, 16, 17, 151, 152
Sondern dass es wie oben sortiert wird.
Wie kann man sowas bewerkstelligen?
(Falls es keine SQL-Funktion dafür gibt, könnte ich die Werte mittels PHP auch in ein Array speichern und dieses dann über PHP-Funktionen sortieren. Falls also jemand dafür einen Hinweis hat, wäre das auch klasse!)
Gruß
Chris
Hallo
ich habe in meiner MySQL-Datenbank eine Spalte mit verschiedenen Zahlenwerten, zb:
15
151
152
16
17Und ich möchte diese nun sortieren - und zwar nicht, dass das Ergebnis so aussieht: 15, 16, 17, 151, 152
Sondern dass es wie oben sortiert wird.
Du möchtest also das Ergebnis haben, das Du beim Sortieren als Zeichenketten
bekommst. Sorge also dafür, dass ORDER BY Zeichenketten und keine Zahlen bekommt:
MySQL-Handbuch, CAST Functions and Operators.
Freundliche Grüße
Vinzenz
Hello,
hehe, sehr gut, vielen Leuten passiert das ganze eher anders herum.
Du müsstest die Spalte für die Dauer des Statements in eine Textspalte verwandeln, auch wenn das die Abfrage verlangsamen wird (es liegt kein Index für die Sortierung vor).
SELECT spalte1, spalte2, ..., CAST(besondere_spalte AS CHAR) AS sortierspalte
FROM table
ORDER BY sortierspalte
MfG
Rouven