Hallo,
ich habe folgendes Problem, es sollen 3 Tabellen miteinander verbindet werden. Jedoch muss für das GKonto je nach Buchungskreis der Passende Text aus Tabelle Buchungskonten oder Debitoren ausgegeben werden.
Tabelle Buchungen
ID, Buchkreis, Konto_id, GKonto_id
1, 0, 1, 2
2, V, 1, 2
3, V, 1, 1
4, 0, 1, 1
Tabelle Buchungskonten
ID, Text
1, Bank
2, Aufwendungen
Tabelle Debitoren
ID, Name
1, Müller
2, Schulz
Da je nach Buchungskreis entweder der jeweilige Debitor oder das Buchungskonto ausgegeben wird hatte ich mir die abfrage so gedacht. Jedoch scheint das mit CONCAT() leider nicht zu funktionieren.
Hat jemand eine Idee, wie man einen JOIN Bedingt ausführen kann?
ich habe folgendes Problem, es sollen 3 Tabellen miteinander verbindet werden. Jedoch muss für das GKonto je nach Buchungskreis der Passende Text aus Tabelle Buchungskonten oder Debitoren ausgegeben werden.
Tabelle Buchungen
1, 0, 1, 2
2, V, 1, 2
3, V, 1, 1
4, 0, 1, 1
Tabelle Buchungskonten
1, Bank
2, Aufwendungen
Tabelle Debitoren
1, Müller
2, Schulz
Da je nach Buchungskreis entweder der jeweilige Debitor oder das Buchungskonto ausgegeben wird hatte ich mir die abfrage so gedacht. Jedoch scheint das mit CONCAT() leider nicht zu funktionieren.
PHP:
SELECT * FROM Buchungen
left join Buchungskonten AS kto ON Buchungen.Konto_id = kto.ID
left join Buchungskonten AS gkto ON Buchungen.GKonto_id = gkto.ID AND CONCAT(0, Buchungen.Buchkreis)
left join Debitoren AS Deb ON Buchungen.GKonto_id = Deb.ID AND CONCAT('V', Buchungen.Buchkreis)
Hat jemand eine Idee, wie man einen JOIN Bedingt ausführen kann?
Zuletzt bearbeitet: