Я пытаюсь выполнить функции поиска, включающие три таблицы.
Поиск пользователей и возврат туда, где идентификатор пользователя 1
является другом вернувшихся пользователей.Также Возвращенные пользователи фильтруются из третьей таблицы, где он проверяет тег этих пользователей.
Итак, я могу сказать: «Верните пользователей, у которых есть тег 'Programming', 'Php'
в userinterests table
, а также, если возвращенный пользователь является другом usr id 1
или нет»
Я пытаюсьиспользуйте приведенный ниже запрос, но получайте Column 'id' in IN/ALL/ANY subquery is ambiguous
Если я удалю левое соединение, тогда оно будет работать.
SELECT n.id, n.firstName, n.lastName, t.id, t.tag, t.user_id, if(id in (
SELECT u.id as id from friends f, users u
WHERE CASE
WHEN f.following_id=1
THEN f.follower_id = u.id
WHEN f.follower_id=1
THEN f.following_id = u.id
END
AND
f.status= 2
), "Yes", "No") as isFriend
FROM users n
LEFT JOIN userinterests t on n.id = t.id
WHERE t.tag in ('Programming', 'Php')
Спасибо, что уделили время:)