El orden en que escribes una consulta no es el orden en que se ejecuta.

Arrastra las cláusulas al orden en que la base de datos realmente las procesa.

1WHERE
2SELECT
3HAVING
4ORDER BY
5FROM
6GROUP BY