私は2つのテーブルを最初に呼び出し、friendship
2番目user
を次の詳細で呼び出します
friendship
テーブルフィールド:
uid1, uid2
user
テーブルフィールド:
uid, username, primary_email, f_name, m_name, l_name, avatar, avatar_path
user
アイデアは、テーブル上にあるときuid1
にテーブルからすべての友達の詳細を取得することfriendship
です。たとえば、= 1は、次のクエリがこのアイデアのベストプラクティスですか?
SELECT
u.uid,
u.username,
u.primary_email,
u.f_name,
u.m_name,
u.l_name,
u.avatar,
u.avatar_path
FROM friendship AS f
LEFT JOIN user AS u ON f.uid2=u.uid
WHERE f.uid1=1
1つのクエリにjoinを使用するか、2つのクエリを使用して友情テーブルからIDを抽出し、もう1つをユーザーテーブルから各IDの詳細を抽出するのがベストプラクティスですか。例:-
SELECT uid2 from friendship WHERE uid1 =1
このクエリはID2、4、6、5、9の配列を取得し、次のクエリで使用します
SELECT * from user WHERE uid IN (2,4,6,5,9)
ベストプラクティスは何ですか?