Esta información sobre SQL podría ser útil para más personas.
Cuando escribes SQL, el orden visual no coincide con el orden en que se procesa.
A nivel lógico, el motor no empieza por SELECT.
Primero necesita saber de dónde vienen los datos: resuelve FROM / JOIN, filtra con WHERE, agrupa con GROUP BY, aplica HAVING y solo después calcula el SELECT.
Orden lógico: FROM / JOIN → WHERE → GROUP BY → HAVING → SELECT → ORDER BY → LIMIT.