липсва ви индекс. Опитайте да използвате EXPLAIN, за да анализирате вашата заявка, това ще ви помогне много.
Решението е просто, ето го:http://sqlfiddle.com/#! 2/56deb/1/0
Трябва да добавите индекс, който включва колоните, използвани в оператора where, в реда, в който се използват:
KEY `night_of_2` (`night_of`,`student_id`,`check_class`)
Също така трябва да принудите използването на индекса при свързването, тъй като присъединявате таблицата към самата нея:
JOIN checks checks2
FORCE INDEX ( night_of_2 ) ON ( checks1.night_of =checks2.night_of )
(ако има по-добър начин, бих искал да знам за него) :)
Поздрави,