Hi, ich beziehe mich mal auf Donkarl 3.16.
http://www.donkarl.com?FAQ3.16 (http://www.donkarl.com?FAQ3.16)
Gern hätte ich diese Abfrage um ein weiteres Kriterium erweitert. Ausgangspunkt ist ja
SELECT A.*
FROM A LEFT JOIN B ON A.Id = B.Id
WHERE B.Id Is Null
Bedeutet, kommt die ID in Tabelle B vor, wird der entsprechende Wert in A nicht angezeigt.
Ich habe folgende Situation: Ich habe eine Kundentabelle. Ich möchte nun Kunden Kategorien zuweisen. Hierfür gibt es eine Tabelle mit den Kategorienamen und eine Tabelle in der mit der die KundenId mit der KategorieId verknüpft wird.
In meinem Kundenformular ist ein ungebundenes List-Feld, welches die dem Kunden zugeordneten Kategorien anzeigt. Zur Auswahl der Kategorien habe ich ein Kombi-Feld. Nun möchte ich aber, dass dieses Kombifeld nur Kategorien anzeigt, die diesem Kontakt noch nicht zugewiesen sind.
Donkarls Beispiel müsste also noch um das Kriterium der ID des Kontakts erweitert werden. Und dies gelingt mir nicht.
Mit Donkarls Beispiel würden, wenn z.B. Kategorie1 einem Kunden zugeordnet ist, bei einem anderen Kunden die Kategorie1 nicht mit angzeigt werden, obwohl sie nur in einem anderen Kontakt vergeben wurde und für diesen Kunden noch nicht, also noch verfügbar sein müsste..
Ich hoffe Ihr wisst, was ich meine.
Wie könnte ich also in o.g. Beispiel noch die Id des aktuellen Kontakts als Kriterium einfügen?
Hallo datekk,
Bin mir nicht sicher, aber ich nehme an, dass du da ein Subselect bemühen musst.
SELECT K.KatID, K.KatName
FROM tblKat AS K
WHERE K.KatID Not In
(SELECT KundenID_F FROM tblKundeZuKat AS KK WHERE KK.KundenID_F = Forms.frmKunden.KundenID)
(Luftcode, Namen anpassen)
gruss ekkehard
Man sollte hier zuerst die Idee verstehen und erst danach an die technische Umsetzung:
Noch nicht zugewiesene Kategorien ergeben sich aus allen Kategorieren (vollständige Menge) abzüglich der vorhandenen Zuweisungen.
Vollständige Menge ist die Kategorientabelle, vorhandene Zuweisungen findet man in der Verknüpfungstabelle, gefiltert auf jeweils die gewünschte Person. Das war es schon, wenn man sich auf die Schlüssel beschränkt, und man kann genau die genannte Abfragekonstellation auf diese Tabellen anwenden.