In Ihrer aktuellen Abfrage sortieren Sie nach der Summe der vier Spalten. Sie können least
verwenden
um den niedrigsten Wert zu erhalten, also könnte Ihre order by-Klausel wie folgt aussehen:
SELECT *
FROM vehicle
ORDER BY
`revisit` DESC,
CASE WHEN `revisit` = 1 THEN LEAST(`FL`, `FR`, `RR`, `RL`) END ASC,
CASE WHEN `revisit` = 0 THEN `date` END ASC
Natürlich würde dies nur nach dem niedrigsten Wert sortieren. Wenn zwei Zeilen denselben niedrigsten Wert teilen würden, gibt es keine Sortierung nach dem zweitniedrigsten Wert. Das ist ein bisschen schwieriger, und ich habe aus Ihrer Frage nicht wirklich verstanden, ob Sie das brauchen.