ユーザー1がユーザー7と2回友達になることはできないと仮定します(つまり、user_a = 1, user_b=7
の行は存在できません。 もう1つの行user_a = 7, user_b = 1
。
SELECT IF(user_a = 1 OR user_a = 2, user_b, user_a) friend
FROM friendship
WHERE (user_a = 1 OR user_a = 2) OR (user_b = 1 OR user_b = 2)
GROUP BY 1
HAVING COUNT(*) > 1