Thema: Delphi SQL ADS und ungleich

Einzelnen Beitrag anzeigen

Grolle

Registriert seit: 5. Nov 2004
Ort: Coesfeld
1.268 Beiträge
 
Delphi 2010 Professional
 
#20

Re: SQL ADS und ungleich

  Alt 3. Nov 2008, 10:56
Hallo,

CONTACTS

id | name | first_name
--------------------------
1 | Muster | Stefan
2 | Test | Andrea
3 | Beispiel | Carsten
4 | Exemplar | Heidi

PROJECTS_TO_CONTACTS

id | contact_id | project_id
----------------------------
1 | 2 | 4
2 | 1 | 7
3 | 3 | 4
4 | 2 | 7
5 | 4 | 4

dann gibts noch eine PROJECTS-Tabelle, hier aber nicht relevant.

Mit der ersten Abfrage hole ich alle CONTACTS, die z. B. dem PROJECT 4 zugeordnet sind:
SQL-Code:
SELECT * FROM CONTACTS LEFT JOIN PROJECTS_TO_CONTACTS ON CONTACTS.ID = PROJECTS_TO_CONTACTS.CONTACT_ID
WHERE PROJECTS_TO_CONTACTS.PROJECT_ID=4
Jetzt möchte ich alle CONTACTS, die nicht dem PROJECT 4 zugeordnet sind, oder 0 sind und auch nicht in dem
Ergebnis der ersten Abfrage auftauchen (das passiert in den obigen Tabellen z. B. mit CONTACT_ID 2. Dieser
ist mehreren Projekten zugeordnet). Bisher sieht die Abfrage da so aus:
SQL-Code:
SELECT * FROM CONTACTS LEFT JOIN PROJECTS_TO_CONTACTS ON CONTACTS.ID = PROJECTS_TO_CONTACTS.CONTACT_ID
WHERE ((PROJECTS_TO_CONTACTS.PROJECT_ID<>4) OR (PROJECTS_TO_CONTACTS.PROJECT_ID IS NULL))
Ich hoffe das war einigermaßen verständlich

Viele Grüße ...

  Mit Zitat antworten Zitat