質問
うまくいけば、これはばかげた質問ですが、私の脳は揚げられていて、今それをどうやってやるのか考えられません。
ソーシャルネットワーキングを面白くしようとしていますが、その人の「フォロワー」を追跡する必要があります。ユーザーテーブルは既に作成されていますが、ユーザーが互いに関連付けられているという考えをどのように表現できますか? これは一方通行の関係であるため、「好き」な人は人b、その逆は必ずしも真実ではありません。
考えられる唯一のことは、1対1のリレーションシップのリストがあるテーブルだけです。したがって、
user a -> user b
user a -> user c
user a -> user d
user b -> user d
user b -> user c
...
しかし、これは私には思えます。
ありがとう
サイモン
編集:たぶんツイッターのフォロワーは私がやろうとしていることに似ています
解決
次のようなフォロワーID情報のみを保持するテーブルを作成します。
user_id | follower_id
そうすべきです。たとえば、ユーザー#56を使用します。
おそらく、フォロワーテーブルに次のような行があるでしょう:
56 | 53453
56 | 323
56 | 463
両方の列に一意の制約を追加するだけで、誰かが2度友達になることはできません。
他のヒント
おそらく次のようなテーブル:
RelationshipId Follower Target
Int Int Int
フォロワーはUserAのID、ターゲットはUserBのID、UserAはUserBをフォローしています。
所属していません StackOverflow