@entermix

Как правильно отсортировать связанные таблицы?

Есть следующие таблицы:

favorite_suppliers:

f97d8249f8c94ed29bd93d4ac89c65fb.png

friend_requests:

ada52cc1d776405cb8dbc44fbff9fbe6.png

Как можно вывести список всех подписчиков пользователя, например supplier_id=25, и отсортировать так, чтобы друзья текущего пользователя (если они есть) например ID 1 были в самом начале списка?
  • Вопрос задан
  • 177 просмотров
Пригласить эксперта
Ответы на вопрос 2
evgeniy2194
@evgeniy2194
PHP, js developer
user:

+------+----+
| id | name |
+---+-------+

SELECT fs.* FROM favorite_suppliers fs
    JOIN user u ON fs.user_id = u.id
        WHERE fs.supplier_id = 25
            ORDER BY u.id

Не очень понятно задание. Зачем вы предоставили вторую таблицу? Как они связаны? Где таблица самих юзеров?
Ответ написан
chlp
@chlp
фулстек
2 запроса соединенных через UNION, который сам уберет дублированные записи
select * from favorite_suppliers where user_id = 1 and supplier_id in
(
    select friend_id from friend_requests where user_id = 1
)
UNION
select * from favorite_suppliers where user_id = 1
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы