Verwandschaft abfragen

Hilia

Neuer Benutzer
Beiträge
2
Hallo,
ich erstelle gerade eine Datenbank und möchte die Verwandschaft von Charakteren abfragen.
Ich greife also zwei Mal auf die selbe Tabelle zu.
**
select
ca.vorname,
cb.vorname,
g.grad
from
charakter as ca
**
aber wie gehts jetzt weiter

Währe für hilfe echt dankbar
So siehen die Tabllen aus.

Create Table charakter(
id int AUTO_INCREMENT not null,
vorname varchar(20),
nachname varchar(20),
rufname varchar(20),
geschlecht char(1)
PRIMARY KEY (id)
);
CREATE TABLE verwandmit(
c_ida int NOT NULL,
c_idb int NOT NULL,
g_id int NOT NULL,
PRIMARY KEY (c_ida, c_idb, g_id ),
FOREIGN KEY (c_ida) REFERENCES charakter (id),
FOREIGN KEY (c_ida) REFERENCES charakter (id),
FOREIGN KEY (g_id) REFERENCES grad (id));

CREATE TABLE grad(
id int NOT NULL,
grad varchar(20),
PRIMARY KEY (c_ida, r_idb ),
FOREIGN KEY (c_ida) REFERENCES charakter (id),
FOREIGN KEY (c_ida) REFERENCES charakter (id));

Gruß Hilia
 
Werbung:
Hey,
hab noch ein bischen gelesen und ausprobiert
Hab einen Lösung.

SELECT ca.vorname, gr.grad, cb.vorname
FROM grad gr
inner JOIN
verwandmit v ON gr.id = v.g_id
inner JOIN charakter cb on v.c_idb =cb.id
inner JOIN charakter ca on v.c_ida = ca.id;

Wenn jemand noch einen besseren Vorschlag hat, gerne.
Gruß Eli
 
Zurück
Oben