wanderer
Продвинутый
Дата регистрации:
04.07.2012 12:02:14
Сообщений: 55
структура друзей такова:
idot - от кого поступила заявка в друзья
idkomy - кому поступила заявка
friend - друзья или нет
Проблема в том что я запутался с INNER JOIN. Не могу вытащить всех друзей пользователя не важно кто добавил пользователь или друг пользователя.
Вот что сделал но почему то не хочет работать пишет:
expects parameter 1 to be resource, boolean given
Запрос который мне удалось наработать.
Если убираю юнион то вытаскивает только тех кому отправил заявку в друзья я. ну или кто оправил мне. все зависит от ON `friend`.`idkomy` = `users`.`id` или ON `friend`.`idot` = `users`.`id`
SELECT
`friend`.`idot`,
`friend`.`idkomy`,
`users`.`login`,
`users`.`name`,
`users`.`familia`,
`users`.`avatar`
FROM
`friend`
INNER JOIN `users`
ON `friend`.`idot` = `users`.`id`
UNION
SELECT
`friend`.`idot`,
`friend`.`idkomy`,
`users`.`login`,
`users`.`name`,
`users`.`familia`,
`users`.`avatar`
FROM
`friend`
INNER JOIN `users`
ON `friend`.`idkomy` = `users`.`id`
WHERE
`friend`.`idot` = '$id'
OR
`friend`.`idkomy` = '$id'
ORDER BY
`friend`.`id` DESC LIMIT 10
Помогите составить правильно запрос? И если можете напишите пожалуйста более глубокую статью про INNER join let Join и про Union