Der Manuel: 2 Felder gleichwertig sortieren

Beitrag lesen

Hi,

gut, angenommen das wäre sie. Dann lautet die Angabe: "ORDER BY RANDOM", denn ich kann keinerlei Logik erkennen. Falls Du eine solche siehst, solltest Du sie erklären.

Hi,
klar, mein Fehler.

Mit ORDER BY wird ja leider nur spaltenweise ausgewertet.

Nein, wertweise. Ob die Werte sich aus einer Spalte ergeben, aus mehreren oder aus gar keinen, ist der ORDER BY Klausel herzlich wurscht.

Hmm, aber wenn ich die Abfrage mache, dann wird nunmal zuerst die Spalte
rank_1 und danach die Spalte rank_2 ausgewertet. Sprich, es wird
nicht geschaut, ob der Wert von rank_2 größer ist als der Wert von
rank_1 und dann wird der Wert von rank_2 genommen.

Cheatah

Zur Erklärung der Logik:

Wenn ich nun einen rank_1 mit 0 hab und einen rank_2 mit 0, dann
ist dieser natürlich in der Summe nur 10.
Dementsprechend würde dieser in der oben angegebenen Tabelle an vorletzter Stelle stehen.
Eigentlich sollte er dann schauen. Wenn rank_1 grösser rank_2, dann nimm rank_1 und umgekehrt.
quasi:
if (rank_1 >= rank_2) then rank_1
else rank_2

Leider hab ich gar keinen Plan wie ich das in MySQL umsetzen kann.

Gruß, Manuel