PostgreSQL - Fremdschlüsselreferenzen schließen Tabellen gegenseitig aus

Ich habe drei Datenbanktabellen: ALIENS, MONSTERS und TROPHIES.

Jeder ALIEN kann mehrere TROPHIES haben. Jedes Monster kann mehrere Trophäen haben. Jede TROPHY muss genau einen SIEGER haben (ALIEN XOR MONSTER).

Gibt es eine Möglichkeit, einen Fremdschlüssel in der TROPHY-Tabelle zu haben, der auf den Primärschlüssel eines ALIENS oder eines MONSTERS verweist?

Oder ist es einfacher, einfach zwei Tabellen zu haben: eine ALIEN_TROPHY-Tabelle und eine MONSTER_TROPHY-Tabelle (obwohl sie identisch wären)?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage