Я пытаюсь выбрать друзей текущего пользователя, используя запрос, который возвращает список друзей для таблицы 1 строка за дружбу.SQL Выбор запроса для друзей
У меня есть пользователь и Друзья таблица:
User(UserID, Username)
Friends(IdFirst, IdSecond)
Предполагая, что у меня есть следующие пользователи: (1, 'Alex'), (2, 'Ana'), (3, 'Daniel')
и следующая дружба: (1, 2), (1,3), (2,3)
До сих пор я использую этот запрос:
SELECT * FROM User U
LEFT JOIN Friends F
ON U.IdUser = F.IdSecond
WHERE F.IdFirst = *LOGGED USER ID*
И это работает только в том случае, если у меня есть зеркальная дружба, например: (1, 2) (2, 1) (1, 3) (3,1)
, и я хочу только одного пара для каждой дружбы. Если использовать указанный выше запрос, я получаю только список друзей для IdFirst.
Надеюсь, у меня есть смысл, спасибо!
Спасибо! Я забыл о союзах ... –