Este es un error en MySQL Query Optimizer. Parecería que, si la tabla en la subconsulta coincide con la tabla en la consulta principal, se considera una subconsulta dependiente, incluso si obviamente no debería serlo, y no hay una solución fácil. Lo siento; ve por la unión.