Wie ein selbstSelbst Beziehung in rdbms zu vertreten?
-
07-07-2019 - |
Frage
Hoffentlich ist dies eine dumme Frage, aber mein Gehirn gebraten wird, und ich kann nicht glauben, wie es jetzt zu tun.
Ich bin Herumspielen eine Social-Networking-Ding zu machen versuchen und wird den Überblick über eine Person, die „Anhänger“ zu halten brauchen. Ich habe eine Benutzertabelle bereits, aber wie ich vertrete die Idee der Benutzer miteinander verbunden ist? Dies ist eine Einbahn Beziehung btw, so dass, wenn Person eine „likes“ Person b, umgekehrt nicht unbedingt wahr ist.
Das einzige, was ich denken kann, ist eine Tabelle, die nur eine Liste von Eins-zu-eins-Beziehungen hat, so:
user a -> user b
user a -> user c
user a -> user d
user b -> user d
user b -> user c
...
, aber das scheint mir aus.
Danke
Simon
edit: vielleicht ein Anhänger auf Twitter ist analog zu dem, was ich tun werde versuchen,
Lösung
Erstellen Sie eine Tabelle, die wie so nur Mitläufer-ID-Informationen enthält:
user_id | follower_id
Das sollte es sein. so nehmen zum Beispiel Benutzer # 56.
er wahrscheinlich Zeilen wie diese in der Folgetabelle haben würde:
56 | 53453
56 | 323
56 | 463
Fügen Sie einfach eine eindeutige Einschränkung auf beiden Spalten, so dass er nicht kann Freund jemand zweimal.
Andere Tipps
Vielleicht ist eine Tabelle, die wie folgt aussieht:
RelationshipId Follower Target
Int Int Int
Wo Follower ist die Id des UserA und Ziel ist die Id von UserB und UserA ist folgende BenutzerB.