ACTUALIZACIÓN SQL con subconsulta que hace referencia a la misma tabla en MySQL

Estoy tratando de actualizar el valor de una columna en un montón de filas en una tabla usando ACTUALIZAR. El problema es que necesito usar una subconsulta para derivar el valor de esta columna, y depende de la misma tabla. Aquí está la consulta:

UPDATE user_account student
SET student.student_education_facility_id = (
   SELECT teacher.education_facility_id
   FROM user_account teacher
   WHERE teacher.user_account_id = student.teacher_id AND teacher.user_type = 'ROLE_TEACHER'
)
WHERE student.user_type = 'ROLE_STUDENT';

Por lo general, si el maestro y el alumno estuvieran en 2 mesas diferentes, mysql no se quejaría. Pero dado que ambos usan la misma tabla, mysql arroja este error en su lugar:

ERROR 1093 (HY000): no se puede especificar la tabla de destino 'estudiante' para actualizar en la cláusula FROM

¿Hay alguna manera de forzar a mysql a hacer la actualización? Estoy 100% seguro de que la cláusula from no se verá afectada a medida que se actualicen las filas.

Si no, ¿hay otra manera de escribir esta actualización sql para lograr el mismo efecto?

¡Gracias!

EDITAR: Creo que lo hice funcionar:

UPDATE user_account student
LEFT JOIN user_account teacher ON teacher.user_account_id = student.teacher_id
SET student.student_education_facility_id = teacher.education_facility_id
WHERE student.user_type = 'ROLE_STUDENT';

Respuestas a la pregunta(6)

Su respuesta a la pregunta