El orden de evaluación de las expresiones en el select
es indefinido. En su mayor parte, solo nota esto cuando tiene variables, porque los errores dan como resultado información errónea.
¿Por qué? El estándar SQL no requiere el orden de evaluación, por lo que cada base de datos es libre de decidir cómo evaluar las expresiones. Por lo general, tales decisiones se dejan en manos del optimizador.