2人のユーザー間の友情関係を維持し、投稿などに参加する友人リストテーブルがあります。
(user_a, user_b, relation type)
サンプルデータは次のとおりです。
u_f_id | user_a | user_b | relation_type
----------------------------------------
12 | 20 | 23 | 1 //friend
13 | 30 | 20 | 2 //family
また、ユーザーの名前と詳細を保持する users テーブルもあります。
ユーザーとその友達の両方を返すクエリを作成しようとしています。たとえば、user_a
またはに表示される場合、ユーザー 20 の友達が必要user_b
です。
私は次のことを試しました:
SELECT CASE
WHEN user_friends.user_a = 20 THEN user_friends.user_b
ELSE user_friends.user_a
END AS friend,
user_friends.*
FROM user_friends
WHERE user_friends.user_a = 20
OR user_friends.user_b = 20