MySQL: Order Offset
Günther S
- datenbank
Hallo zusammen,
ich habe mal wieder eine Frage zu MySQL: Kann man nach einer Spalte sortieren lassen, hierbei aber den Startwert (d.h. den "kleinsten" Wert) selbst festlegen? Sprich kann ich MySQL sagen, z.B. aufsteigend nach name
zu sortieren, aber bei 'F' anzufangen, bis 'Z' zu sortieren und optimalerweise dann den Rest von 'A' bis 'E' auszulesen?
Mit freundlichen Grüßen,
Günther
yo,
Kann man nach einer Spalte sortieren lassen, hierbei aber den Startwert (d.h. den "kleinsten" Wert) selbst festlegen? Sprich kann ich MySQL sagen, z.B. aufsteigend nach
name
zu sortieren, aber bei 'F' anzufangen, bis 'Z' zu sortieren und optimalerweise dann den Rest von 'A' bis 'E' auszulesen?
mit ein wenig tricksen geht das, indem du dir eine künstliche hilfsspalte erzeugtst, nach der du zuerst sortierst und erst danach nach dem namen.
SELECT spalte1, spalte2, IF(LEFT(name, 1) IN ('A', 'B', 'C', 'D', 'E'), 1, 0) AS Sortierung
SELECT from tabelle
ORDER BY Sortierung, name
mus mal schauen, ob bei dir die Prüfund Case Sensitive ist oder nicht.
Ilja
Hi Ilya,
SELECT spalte1, spalte2, IF(LEFT(name, 1) IN ('A', 'B', 'C', 'D', 'E'), 1, 0) AS Sortierung
from tabelle
ORDER BY Sortierung, name
(Habe mir erlaubt, in deinem Zitat das zweite "SELECT" rauszunehmen)
Das ist eine gute Idee, danke!
MfG,
Günther