Die Reihenfolge der Auswertung von Ausdrücken in select
ist nicht definiert. Meistens merkt man das nur bei Variablen, weil die Fehler zu fehlerhaften Informationen führen.
Wieso den? Der SQL-Standard erfordert keine Auswertungsreihenfolge, sodass jede Datenbank frei entscheiden kann, wie die Ausdrücke ausgewertet werden. Typischerweise werden solche Entscheidungen dem Optimierer überlassen.