Hallo, ich würde gerne für mein Programm aus 3 Join-Abfragen eine machen. Diese 3 Join-Abfragen funktionieren einzeln, also kann es eigentlich nicht an der DB-Aufbau liegen.
2 Joins habe ich bereits zusammengeführt aber bei der dritten habe ich irgendwie Probleme mit der Klammer (nehme ich an)
Abfrage über 3 Tabellen mit 2 Joins
SQL-Anweisung
1: 2: 3: 4: 5: 6: 7:
| select re_positionen.ID_Pos, rechnung.RechnungsNummer, rechnung.Datum, artikel.Artikel_Bezeichnung from (re_positionen join rechnung on re_positionen.FK_RE_ID = rechnung.ID_RE and rechnung.ID_RE = 3) join artikel on artikel.ID_Art = re_positionen.FK_Art_ID where artikel.ID_Art = 45 |
Nun Abfrage über 4 Tabellen mit 3 Joins
SQL-Anweisung
1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| select re_positionen.ID_Pos, rechnung.RechnungsNummer, rechnung.Datum, artikel.Artikel_Bezeichnung, kunde.Name, kunde.Vorname from ((re_positionen join rechnung on re_positionen.FK_RE_ID = rechnung.ID_RE and rechnung.ID_RE = 3, rechnung join kunde on rechnung.FK_Kunde_ID = kunde.ID_Kunde) join artikel on artikel.ID_Art = re_positionen.FK_Art_ID where artikel.ID_Art = 45) join kunde on rechnung.FK_Kunde_ID = kunde.ID_Kunde and rechnung.FK_Kunde_ID = 4 |
Fehler:
#1066 - Not unique table/alias: 'rechnung'
Ich nehme an, er hat Probleme mit 2 Zeilen:
SQL-Anweisung
1:
| join rechnung on re_positionen.FK_RE_ID = rechnung.ID_RE |
und
SQL-Anweisung
1:
| join kunde on rechnung.FK_Kunde_ID = kunde.ID_Kunde |
Ich habe die RechnungsID als Fremdschlüsse in der RE_Positionen
Und KundenID als Fremdschlüssel in der Tabelle Rechnung...
P.S fall die DB gebraucht wird, kann ich gern ein DB-Diagramm machen.
Danke für die Ratschläge
