@IceJOKER
Web/Android developer

Как вывести возможных друзей(sql запрос) ?

Нужно вывести всех пользователей с общими друзьями.
для текущего пользователя (пускай будет с id-ом 1) друзья выбираются так:
структура таблицы:
to_id, from_id
1 2
5 1
3 2
3 5
//тут у пользователя c id-1 возможных друзей 1 - это пользователь с id-ом 3
select if(to_id = 1 , from_id, to_id) friend_id from friends_table f1 where f1.to_id = 1 or f1.from_id = 1
  • Вопрос задан
  • 2639 просмотров
Пригласить эксперта
Ответы на вопрос 2
@vdem
Не уверен, может так:
SELECT *
FROM friends f
    INNER JOIN friends f1 ON f1.from_id = f.to_id
    INNER JOIN friends f2 ON f2.to_id = f.from_id
WHERE f.from_id = 1
    OR f.to_id = 1

Потом из результата (и столбцов и строк) убрать повторяющиеся id.
Ответ написан
Taraflex
@Taraflex
Ищу работу. Контакты в профиле.
SELECT to_id FROM friends_table WHERE to_id IN (SELECT from_id FROM friends_table WHERE to_id = 1);
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
BasicDecor Москва
от 90 000 до 130 000 руб.
TR-Project Краснодар
До 200 000 руб.
от 50 000 до 120 000 руб.
27 июн. 2019, в 01:26
50000 руб./за проект
27 июн. 2019, в 00:27
250000 руб./за проект