Задавайте вопросы, мы ответим
Вы не зашли.
Привет всем!
Товарищи эксперты, требуется Ваша помощь!
Есть 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";
но подробности такого запроса для меня остаются весьма туманными. Надеюсь на Ваше просвещение.
Заранее спасибо за консультацию!
Неактивен
Неактивен
vasya, огромное спасибо за ответ! id прикрутил для выборки порций записей из каждой отдельной таблицы. Например: ORDER BY `id` DESC LIMIT N,15. Такое тут тоже требуется.
Еще раз спасибо за ответ!
Неактивен
для этих целей можно использовать и другие поля, например, userhash
Неактивен