Nick: Problem mit SQL-Statement

Beitrag lesen

Hallo,

folgendes Problem:

habe 3 Tabellen

  1. artikel
  2. artikelzubehoer
  3. zubehoer

artikel und zubehoer stehen in einer n:m Beziehung, daher die Zwischentabelle artikelzubehoer.

Nun möchte ich all das Zubehoer angezeigt bekommen, welches sich in Zubehoer befindet, sollte jedoch in artikelzubehoer ein Artikel einem bestimmten Zubehoer zugeordnet sein, dann nur das mit der gesuchten Artikelnummer.

Beispiel: Suche nach Artikelnummer 123

In artikelzubehoer steht artikelnummer: 123 und artikelnummerzubehoer = 4711

Als Ergebnis soll nun 4711 erscheinen und zusätzlich das ganze Zubehör das nicht in der Zwischentabelle artikelzubehoer zu finden ist.

Ich möchte umgehen, das ich für jedes Zubehoer, das für alle Artikel gültig verfügbar ist ein Eintrag in der Zwischentabelle artikelzubehoer nötig ist.

Zum Verstaendnis: artikelzubehoer definiert nicht jede Beziehung zwischen artikel und zubehoer, sondern nur exklusive Verbindungen? D.h. ein Eintrag in zubehoer "gehoert" zu jedem artikel, wenn es keinen Eintrag in artikelzubehoer gibt?

Mein versuch mit
SELECT r.artikelnummerzubehoer, bezeichnung1, bezeichnung2, bild FROM zubehoer r LEFT JOIN artikelzubehoer rel ON (r.artikelnummerzubehoer = rel.artikelnummerzubehoer) AND (rel.artikelnummer ="1520005900");

liefert immer jegliches Zubehoer, auch jenes welches in artikelzubehoer eigentlich einem anderen Artikel zugeordnet ist.

Was sind denn eigentlich die Primaerschluessel?

Nick

--
--------------------------------------------------
http://www.xilp.eu
XILP Internet Links People
Dein persoenliches privates Netzwerk
aus Freunden, Verwandten, Bekannten und Kollegen.
--------------------------------------------------