Access/Sql/Outer Join/0 oder NULL Werte

Hallo,
ich arbeite mit Access 2003 und werte Tabellen aus einer Unify Datenbank aus. Die Tabellen habe ich angebunden.
Es handelt sich um 3 Tabellen:
PUBLIC_aufkopf = Kopfdatei
PUBLIC_aufpos = Position
PUBLIC_artst = Artikelstamm

Der unten angeführte Select, ermittelt alles Kunden die den Artikel 6770 innerhalb es Datums gekauft haben. Das funktioniert soweit.
Nun möchte ich aber, wenn möglich im gleichen Select, auch die Kunden ermitteln, die den Artikel NICHT gekauft haben.Diese sollen dan mit dem Wert 0 oder NULL angezeigt werden. Ich meine mal gehört zu haben das es die Funktion „OUTER JOIN“ gibt die das ermöglicht.
Da ich aber Leihe bin weiß ich nicht ob- und wie man dieses in den Select einbauen kann.
Gibt es jemanden der mir da behilflich sein kann, bzw. den Select um diese Funktion erweitern kann ???

SELECT PUBLIC_aufkopf.debitor, PUBLIC_aufkopf.name, PUBLIC_aufkopf.branche,
PUBLIC_aufkopf.plz, PUBLIC_aufkopf.ort, PUBLIC_aufkopf.strasse,
PUBLIC_aufpos.menge, PUBLIC_aufpos.artikel,
PUBLIC_aufpos.artikelbezeichnung, PUBLIC_aufkopf.fakturdatum,
PUBLIC_artst.kvp
FROM (PUBLIC_aufkopf INNER JOIN PUBLIC_aufpos ON (PUBLIC_aufkopf.firma =
PUBLIC_aufpos.firma) AND (PUBLIC_aufkopf.auftragsnr =
PUBLIC_aufpos.auftragsnr)) INNER JOIN PUBLIC_artst ON (PUBLIC_aufkopf.firma
= PUBLIC_artst.firma) AND (PUBLIC_aufpos.artikel = PUBLIC_artst.artikel) AND
(PUBLIC_aufpos.preisnummer = PUBLIC_artst.preisnummer)
WHERE (((PUBLIC_aufpos.artikel)=6770) AND
((PUBLIC_aufkopf.fakturdatum)>#6/1/2010#));

Im voraus schon mal vielen Dank
Gruß
Wolfgang aus Krefeld

Hallo,

nachdem hier offensichtlich mit „ohne ID-Feldern“ gearbeitet wird, wird’s etwas komplizierter:

Erstelle eine 2. Abfrage nach Maßgabe von hier:

www.donkarl.com/?FAQ3.16

und verbinde die in einer 3. Abfrage mittels der Union-Klausel:
Select * from abf_Abfrage1
Union
Select * from abf_Abfrage2

Viele Grüße vom Bodensee
Franz , DF6GL

PS: Feedback erwünscht!

Hallo,

versuchs mal so:

SELECT PUBLIC_aufkopf.debitor, PUBLIC_aufkopf.name, PUBLIC_aufkopf.branche,
PUBLIC_aufkopf.plz, PUBLIC_aufkopf.ort, PUBLIC_aufkopf.strasse,
PUBLIC_aufpos.menge, PUBLIC_aufpos.artikel,
PUBLIC_aufpos.artikelbezeichnung, PUBLIC_aufkopf.fakturdatum,
PUBLIC_artst.kvp
FROM (PUBLIC_aufkopf LEFT JOIN PUBLIC_aufpos ON (PUBLIC_aufkopf.firma =
PUBLIC_aufpos.firma) AND (PUBLIC_aufkopf.auftragsnr =
PUBLIC_aufpos.auftragsnr)) LEFT JOIN PUBLIC_artst ON (PUBLIC_aufkopf.firma
= PUBLIC_artst.firma) AND (PUBLIC_aufpos.artikel = PUBLIC_artst.artikel) AND
(PUBLIC_aufpos.preisnummer = PUBLIC_artst.preisnummer)
WHERE UBLIC_aufpos.artikel=6770 AND PUBLIC_aufkopf.fakturdatum>#6/1/2010#;

Ich habe INNER JOIN durch LEFT JOIN ersetz.

Gruß

Hob

Hallo Hob,

vielen Dank, werde ich versuchen, obwohl ich die Funktion im Abfrageassistenten „Inkonsistenzsuche“ gefunden habe. Die hat mein Problem auch gelöst. Allerdings finde ich deinenLösungsansatz besser wenn er funktioniert,da ich dann einen besseren Bericht erstellen kann.
Vielen Dank
Gruß
Wolfgang

Hallo,
vielen Dank für deine Mühe.
Irgentwie hat dein Lösungsansatz nicht funktioniert. Kann aber auch der Unify Datenbank liegen die reagiert schon mal ein wenig komisch
Ich habe in der zwischenzeit im Abfrageassistenten die Funktion „Inkonsistenzsuche“ gefunden, die hat mein Problem gelöst.
Trotzdem vielen Dank für deine Hilfe.
Gruß
Wolfgang