Ich habe eine Tabelle mit Personen - einen ID-Primärschlüssel und einen Namen. In meiner Anwendung können Personen 0 oder mehr reale Beziehungen zu anderen Personen haben. So könnte Jack für Jane arbeiten, Tom könnte Tony ersetzen, Bob könnte ein Mitarbeiter von Rob sein und Bob könnte auch mit Mary verheiratet sein.
Wie kann ich dies am besten in der Datenbank darstellen? Eine viele-zu-viele-Intersect-Tabelle? Eine Reihe von Self-Joins? Eine Beziehungstabelle mit einer Zeile pro Beziehungspaar und Typ, in die ich Datensätze für die Beziehung in beide Richtungen einfüge?