Дед Мазай
Гений
(58129)
6 лет назад
> ведь я не могу записывать в колонку ЖАНРЫ для каждого фильма по несколько жанров
Так сделать можно, но такая структура не соответствует 1-ой нормальной форме, потому не рекомендуется. Однако, если взвесить все достоинства и недостатки, можно и так сделать. Надо продумать, как именно хранить жанры в одной колонке: есть варианты...
Это связь много-ко-многим (фильм-жанр). Стандартная реализация - отдельная таблица с двумя колонками (код фильма, код жанра).
Пока нет структуры таблиц, обсуждать SQL-запрос бессмысленно.
Вот пример, чтобы стало понятней:
Пользователь отмечает жанры - ФАНТАСТИКА, КОМЕДИЯ, БОЕВИК и нажимаем показать фильмы.
Ему выдается результат:
Фильм А - ФАНТАСТИКА, БОЕВИК, КОМЕДИЯ, триллер, криминал
Фильм Б - ФАНТАСТИКА, БОЕВИК, КОМЕДИЯ
Фильм В - ФАНТАСТИКА, БОЕВИК, КОМЕДИЯ, ужасы
Фильм Г - ФАНТАСТИКА, БОЕВИК, КОМЕДИЯ, триллер
Фильм Д - ФАНТАСТИКА, БОЕВИК, КОМЕДИЯ биография, военный
Фильм Е - ФАНТАСТИКА, БОЕВИК, КОМЕДИЯ
Фильм Ж - ФАЕТАСИКА, БОЕВИК, КОМЕДИЯ, исторический
И т. д.
Вот сайт на котором такая система есть - https://my-hit.org/film/a6-aa-ab/
Я не пойму как должен составляться SQL запрос в таком случае и как мне хранить жанр для каждого фильма, ведь я не могу записывать в колонку ЖАНРЫ для каждого фильма по несколько жанров.