Добрый вечер всем. Есть три модели: Teacher(id, name) , Students(id , name), Lesson (id, title, date, status). Между lesson и двумя моделями реализована связь многие ко многим, есть две сквозные таблицы lessons_students, lessons_teachers.
Есть гибкий запрос выборки по урокам включая данные из этих двух моделей с подзапросами подсчёта количества учеников и учителей по id соответствующих связных таблиц.
Каким образом можно оптимизировать поиск? Подразумевается, что в таблице lessons много данных. Понимаю, что нужно добавить индексы. Но на какие поля и какого типа. Заранее благодарю.
И нужно ли вообще добавлять индекс на primary key