SirNeo
Erfahrenes Mitglied
Hallo zusammen,
bei einem Select beiße ich mir seit geraumer Zeit die Zähne aus. Es geht um einen Sammlerkatalog.
Kurz zu den Tabellen:
1. Objekttabelle
2. Sprachtabelle bezogen auf das Objekt
3. Userdaten bezogen auf das Objekt
Nun möchte ich alle Einträge ausgeben die der User nicht hat. Bedeutet in der Datenbank, alle Einträge wo die Quantity = 0 ist. Allerdings muss der User keinen Eintrag für ein Objekt haben. Also ist in Tabelle 3 kein Eintrag dafür vorhanden, diese möchte ich aber auch haben, wie kann ich das umsetzen?
Hier mein aktueller Stand:
Zur Info:
c.id ist die User-ID
a.manf_id ist die Hersteller-Id
Als Ergebnis bekomme ich nun alle Einträge angezeigt, wo ich einen Objekteintrag für habe, also die in c für meinen User vorhanden sind. Mir fehlen aber jetzt die Objekte, die in c nicht exisiteren (solche wo der User noch nie etwas mit gemacht hat).
Ich hoffe ich habe mich verständlich ausgedrückt.
Wäre super, wenn jemand die Frage beantworten könnte.
Viele Grüße und vielen Dank im vorraus
Bastian
bei einem Select beiße ich mir seit geraumer Zeit die Zähne aus. Es geht um einen Sammlerkatalog.
Kurz zu den Tabellen:
1. Objekttabelle
2. Sprachtabelle bezogen auf das Objekt
3. Userdaten bezogen auf das Objekt
Nun möchte ich alle Einträge ausgeben die der User nicht hat. Bedeutet in der Datenbank, alle Einträge wo die Quantity = 0 ist. Allerdings muss der User keinen Eintrag für ein Objekt haben. Also ist in Tabelle 3 kein Eintrag dafür vorhanden, diese möchte ich aber auch haben, wie kann ich das umsetzen?
Hier mein aktueller Stand:
Code:
SELECT DISTINCT * FROM Objekttabelle AS a, Sprachtabelle AS b left JOIN Userdaten as c ON b.objekt_id = c.objekt_id WHERE a.objekt_id = b.objekt_id AND c.id = '6' AND ( c.quantity = 0 OR c.quantity = NULL) AND a.manf_id = '6' GROUP BY b.objekt_id ORDER BY b.name ASC
c.id ist die User-ID
a.manf_id ist die Hersteller-Id
Als Ergebnis bekomme ich nun alle Einträge angezeigt, wo ich einen Objekteintrag für habe, also die in c für meinen User vorhanden sind. Mir fehlen aber jetzt die Objekte, die in c nicht exisiteren (solche wo der User noch nie etwas mit gemacht hat).
Ich hoffe ich habe mich verständlich ausgedrückt.
Wäre super, wenn jemand die Frage beantworten könnte.
Viele Grüße und vielen Dank im vorraus
Bastian