Günther S: MySQL: Order Offset

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

  1. 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

    1. 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