|
|
|
Один запрос к трём таблицам.
|
|||
|---|---|---|---|
|
#18+
Всем доброго времени суток. Ситуация такая: Есть 2 таблицы сущностей: Таблица с фильмами movies (поля: movieId, ..., ...) и таблица с жанрами genres (поля: genreId, genre), есть таблица movies_genres(поля: movieId, genreId), сопоставляющая фильмы с жанрами. Один фильм может иметь несколько жанров. Какой запрос нужно сделать чтобы выбрать все фильмы, имеющие жанры из некоторого списка. Сделал такой запрос: select * from movies where movieId in (select movieId from movies_genres where genreId in (select genreId from genres where genre in ('Боевик','Фантастика'))); Но по-моему запрос внутри запроса внутри запроса - это быдлокод. Как сделать подобное по-другому? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2014, 19:58:18 |
|
||
|
Один запрос к трём таблицам.
|
|||
|---|---|---|---|
|
#18+
ILL-JAHНо по-моему запрос внутри запроса внутри запроса - это быдлокодВообще-то нет. Другое дело, что мускл до версии 5.5 криво с подобными подзапросами работает. Код: sql 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2014, 20:32:28 |
|
||
|
|

start [/forum/topic.php?fid=47&tid=1834421]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
42ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
31ms |
get tp. blocked users: |
1ms |
| others: | 199ms |
| total: | 309ms |

| 0 / 0 |
