Loading...
Добрый вечер, ув. кодеры кто хорошо дружит с mysql. Подскажите как можно собрать один запрос на выборку данных с двух таблиц и отфильтровать по столбцу и выводить данные одной таблицы только те которых нет в другой.

Идея в чем. Нужно выводить в теме форума кто из друзей участвует в данной теме.


Я надеюсь что вы меня поняли что хочу сделать.
Заранее спасибо за помощь
Ну если данные из второй таблицы не нужны, то как вариант можно через подзапрос

SELECT * FROM topic_users
WHERE user_id IN (SELECT friend_id FROM friedns WHERE user_id = 123213)

Ну типа такого
RGame , Так в таблице topic_users нужно получать не только user_id но и id_topic'a
RGame , Ой туплю можно же в условие выборки добавить нужный ид топика. Гудд все работает как надо. А вот еще вопрос а можно ли таким же подзапросом выводить тех друзей которые еще не участвуют в теме?
Почитав про подзапросы. Собрал сам то что нужно.
sql
SELECT * FROM `frends` WHERE `frend` ='1' AND `i` = '1' AND `user` NOT IN (SELECT `user_id` FROM `forum_topic_users` WHERE `id_forum` = '2')


Может и не правильно. Поправьте пожалуйста))
RGame - спасибо за наводку *czar*

*closed*
29309848 (13 дек 2022, в 20:18)
Почитав про подзапросы. Собрал сам то что нужно.
sql
SELECT * FROM `frends` WHERE `frend` ='1' AND `i` = '1' AND `user` NOT IN (SELECT `user_id` FROM `forum_topic_users` WHERE `id_forum` = '2')


Может и не правильно. Поправьте пожалуйста))
RGame - спасибо за наводку *czar*

*closed*
Через JOIN можно.
Юзай JOIN
Онлайн: 4
Время:
Gen. 0.092
(c) Bym.Guru 2010-2025