Guten Abend nach Deutschland
Ich habe folgendes Problem: ich habe zwei Tabellen (mitglieder, mitglieder_funktionen). Die Tabelle "mitglieder" hat unter anderem das Feld "TrainerFunktion". Dort steht eine Zahl drin. In der Tabelle "mitglieder_funktionen" gibt es die Felder "ID" und "Funktion". Die ID entspricht der Zahl in "mitglieder.TrainerFunktion". Das Feld "mitglieder.Trainer" beinhaltet entweder 0 oder 1. D.h. 1 = ist Trainer und 0 = ist kein Trainer.
Nun habe ich folgende Abfrage gemacht:
Als Resultat erhalte ich 4 Trainer der 1. Mannschaft des Vereins - jedoch alle immer doppelt und im Feld TrainerFunktion ist eine Zahl statt der Name der Funktion.
Warum kommen die Datensätze doppelt? ... und warum erhalte ich nicht den Wert aus "mitglieder_funktionen.Funktion" zurück?
Ich habe folgendes Problem: ich habe zwei Tabellen (mitglieder, mitglieder_funktionen). Die Tabelle "mitglieder" hat unter anderem das Feld "TrainerFunktion". Dort steht eine Zahl drin. In der Tabelle "mitglieder_funktionen" gibt es die Felder "ID" und "Funktion". Die ID entspricht der Zahl in "mitglieder.TrainerFunktion". Das Feld "mitglieder.Trainer" beinhaltet entweder 0 oder 1. D.h. 1 = ist Trainer und 0 = ist kein Trainer.
Nun habe ich folgende Abfrage gemacht:
Code:
Select TrainerFunktion, Vorname, Name from mitglieder join mitglieder_funktionen on mitglieder.TrainerFunktion = mitglieder_funktionen.ID where mitglieder.Trainer = 1 and (mitglieder.TrainerMannschaft = 1 or mitglieder.TrainerMannschaft2 = 1) order by mitglieder.Name;
Warum kommen die Datensätze doppelt? ... und warum erhalte ich nicht den Wert aus "mitglieder_funktionen.Funktion" zurück?
Kommentar