Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
16.11.2002, 16:52
|
|||
---|---|---|---|
|
|||
связующая таблица |
|||
#18+
Привет всем! Вот - не могу никак в одном запросе все сделать. Первая таблица - номера книг и названия книг, вторая - номера авторов и имена авторов. Положим есть третья связующая (две других) таблица. В ней строки (номера книг и номера авторов) 1, 4 1, 5 2, 3 2, 5 т.е. от обеих таблиц к ней связи "один ко многим" - "многим" - с ей стороны (если ничего не путаю). т.е. у книг 1 и 2 есть несколько авторов и эти авторы могут быть у любой из книг... хм.. теперь если я выберу select * from table1, table2, table3 where table1.id=table3.id_of_table1 and table2.id=table3.id_of_table2 and ( (table3.id_of_table2=4) OR (table3.id_of_table2=5)) вернутся толко те, у которых или 4 или 5 или оба автора. а вот как по AND??? чтобы вернулись только те, у которых и 4 и 5 есть! КАК БЫТЬ? ЗЫЖ Может быть вложенные запросы? Но тут не пройдет - у меня mysql. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
18.11.2002, 09:59
|
|||
---|---|---|---|
связующая таблица |
|||
#18+
Такая связь называется многие-ко-многим Тебе надо три таблицы! Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=47&mobile=1&tid=1856257]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
33ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
38ms |
get tp. blocked users: |
1ms |
others: | 14ms |
total: | 131ms |
0 / 0 |