В първата заявка mysql трябва да избере подмножество от mdl_enrol
маса и окост mdl_user_enrolments
и mdl_userdata
в паметта. Така че избирате много данни в паметта. След като направите това - присъединявате данните. Ако няма достатъчно памет за поставяне на всички данни, докато не бъдат обединени и изпратени обратно на клиента - тогава се създава временна таблица на твърдия диск. Най-вероятно mysql оптимизаторът не е достатъчно готин, за да поправи грешката ви и да се опита да подобри плана за изпълнение. Ето защо е бавен.
Докато за втората заявка mysql знае какво точно трябва да избере и избира само малкото количество необходими данни. В този сценарий е възможно да се използват индекси (ако приемем, че са създадени всички необходими индекси). Така че е бързо.