2
こんにちは、私はどのように私は相互の友人を得ることができるかを調べようとしていますどのように相互の友人のリストを取得する
私は現在、これを考える問題があります。
私は、「ユーザー」と呼ばれるテーブルを持っており、これは、それは私がテーブルには「友情」 と呼ばれている
id | name
-----------
1 Kenny
2 Jack
3 Jimmy
4 Chris
5 Meg
6 Jake
7 Micheal
8 Dude
をどのように見えるかであり、これは、それがどのように見えるかです
user_a | user_b
----------------
4 1
7 5
8 1
2 4
2 1
5 2
1 6
1 7
USER_Aは、User_Bへの送信します友人になるためのリクエスト... BAM友達がいる。 今、私のユーザー2、私はユーザー1の友人リストに行くと、私は共通の友達を見たいです。それを行う正しいSQLは何ですか?
これは興味深い点です(ユーザー1がユーザー7と2人の友人になることはできないと仮定します)。実際にその制限をバックエンドで強制することはできません。おそらくuser_aとuser_bを複合ユニークキーにすることが最善の方法です。これは関連する質問であるため、誰かがより良い解決法を提案できれば幸いです。 – user183037
男、ありがとうございました! – Kenny
@ user183037これまでにこのようなプロジェクトを構築しました。私は、user_a、user_b'にプライマリキーを作成し、友人関係の2行(両方の組み合わせ)を挿入しました。 (user_a = @ user'を検索するだけで)ユーザーの友人を探しやすく、 'user_b'だけに第2のインデックスを必要としません。 –