これからの回答を使用して、ユーザー名のリストを抽出しました:
クエリに OR 演算子が多すぎる場合、mysql クエリを最適化する方法は?
今、私は別の問題を抱えています。リクエスターとバディの両方が複合主キーを形成する、2つの列だけで構成されるフレンドテーブルがあります。
上記のSOの質問を使用して、特定のユーザーのFacebookの友達の配列があるとします。
Web アプリでも自動的に友達にするにはどうすればよいですか?
つまり、「usera」というユーザーに 5 人の実際の友達がいるとします。10 個の挿入ステートメントを実行する必要があります。
例: friendA, usera と usera, friendA のように、friendA が usera の友達として反映されるようにします。
挿入選択が効率的であることを理解しています。残念ながら、これらの友人のユーザー名のリストは、上記の質問で仲間の SO メンバーによって提案されているように、IN 句を使用して値の PHP 配列を介して取得されます。
それで、私は何をすべきですか?
するべきか
a) 名前をループして、ステップごとに 2 つの挿入ステートメントを実行しますか?
b) 挿入選択を使用しますか? しかし、それを正確に行う方法は?
私のDBはこのように設計されています:
ユーザー名と fb_uid を持つユーザーと呼ばれる 1 つのテーブル。ここで、ユーザー名は主キーであり、fb_uid は null 可能です。
リクエスターと呼ばれる列とバディと呼ばれる別の列を持つ友人と呼ばれる1つのテーブル。両方の列が複合キーを形成します。
友達テーブルに (usera, userb) と (userb, usera) のデータがある場合、私の Web アプリで 2 人のユーザー (usera, userb) の間に友情が確立されます。
ありがとうございました。