Есть Course, Lesson и Student.
Student Many To Many Course (courses_students).
Задача: посчитать количество уроков, пройденных учеником.
Есть 2 варианта:
1. Создать Many to Many lessons_students и там отслеживать статус.
2. В courses_students таблице добавить json поле и там хранить массив уроков и статусы.
Первый вариант вроде логичнее и прозрачнее, но ппц, эта таблица распухнет за несколько месяцев.
Я за второй вариант, но выглядит очень грязно.
Или мне кажется?