|
Помогите составить MySQL-запрос
|
|||
---|---|---|---|
#18+
Привет всем! Товарищи эксперты, требуется Ваша помощь! Есть 3 таблицы с записями (см. рис.) И есть запрос вида: "SELECT * FROM `table_users` LEFT JOIN `table_post` USING (userhash)"; Он возвращает записи сгруппированные, из 2ух таблиц `table_users` и `table_post`, которые объединены по одному полю `userhash`. Вопрос: Каким должен быть запрос, чтобы из результатов данной выборки исключить все записи, кроме той, котрая отмечена в третьей таблице `table_like`. Т.е. поля userhash и contenthash выбранной записи должны совпадать со значениями полей userhash и contenthash из таблицы table_likes. На прилагаемом рисунке искомая запись из трех таблиц обведена красным контуром. Возможно, для решения данной задачи необходимо будет соорудить некую конструкцию на подобии этой: "SELECT * FROM (SELECT * FROM `table_users` LEFT JOIN `table_post` USING (userhash)) некие условия выборки с использованием таблицы table_likes"; но подробности такого запроса для меня остаются весьма туманными. Надеюсь на Ваше просвещение. Заранее спасибо за консультацию! ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2016, 00:21 |
|
Помогите составить MySQL-запрос
|
|||
---|---|---|---|
#18+
А зачем тебе в данном случае table_post ? Просто выбирай всех users.userhash=likes.userhash Результат будет тем же самым. DISTINCT не забудь. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2016, 03:48 |
|
Помогите составить MySQL-запрос
|
|||
---|---|---|---|
#18+
wowka, а связывание таблиц inner join не подходит Код: sql 1. 2. 3. 4.
или я чего то не понял в вопросе. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2016, 10:32 |
|
|
start [/forum/topic.php?fid=54&msg=39313803&tid=2008570]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
43ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
40ms |
get tp. blocked users: |
1ms |
others: | 283ms |
total: | 409ms |
0 / 0 |