Wie könnte ich eine Ansicht für eine Tabelle mit einer Teilmenge der Datensätze der Tabelle, allen Spalten der Tabelle und einer zusätzlichen "Flag"-Spalte erstellen, deren Wert auf 'X' gesetzt wird, wenn die Tabelle einen bestimmten Typ von Datensatz enthält? Betrachten Sie beispielsweise die folgende Beziehungstabelle Relations
, bei der die Werte für Typen stehen für 'H'-Mensch, 'D'-Hund
:
id | type | relation | related
--------------------------------
H1 | H | weiß | D2
H1 | H | besitzt | D2
H2 | H | weiß | D1
H2 | H | besitzt | D1
H3 | H | weiß | D1
H3 | H | weiß | D2
H3 | H | behandelt| D1
H3 | H | behandelt| D2
D1 | D | beißt | H3
D2 | D | beißt | H3
Es kann keine bestimmte Reihenfolge von Datensätzen in dieser Tabelle geben.
Ich möchte eine Ansicht Humans
erstellen, die alle Mensch-zu-Hund-weiß
-Beziehungen aus Relations
und alle Spalten von Relations
sowie eine zusätzliche Spalte isOwner
enthält, die 'X'
speichert, wenn ein Mensch in einer gegebenen Beziehung jemanden besitzt:
id | type | relation | related | isOwner
------------------------------------------
H1 | H | weiß | D2 | X
H2 | H | weiß | D1 | X
H3 | H | weiß | D1 |
aber habe damit ein bisschen zu kämpfen. Kennst du einen Weg, dies zu tun, vorzugsweise in einem CREATE VIEW
-Aufruf oder auf irgendeine Weise wirklich?