# Ergebnisse mit JOIN ausschließen



## RedWraith (26. September 2008)

Hallo ! Ich habe folgendes Problem:

Ich versuche, Datensätze aus einer Tabelle abzufragen, deren Primary Key NICHT in einer anderen Tabelle stehen.

Kleines Beispiel:


```
Tabelle Kunden:
-----------------------
Ku_id INT PRIMARY KEY
Ku_Vorname VARCHAR(50)
Ku_Nachname VARCHAR(50)
Ku_Adresse VARCHAR(50)
...
...


Tabelle Favoriten:
-------------------------
Fa_id INT PRIMARY KEY
Ku_id INT FOREIGN KEY -> Kunden.Ku_id
...
...
```


Wenn ich dann darauf folgenden Select ausführe

```
SELECT k.* FROM Kunden k INNER JOIN Favoriten f ON k.Ku_id = f.Ku_id
```
dann bekäme ich nur die Datensätze aus der Tabelle Kunden, die einen Fremdschlüssel in der Tabelle Favoriten haben. Was ich möchte ist nun, dieses Ergebnis quasi umzudrehen. Ich will alle Datensätze aus der Tabelle Kunden abrufen, die noch KEINEN Fremdschlüssel in der Tabelle Favoriten haben.

Ist das irgendwie möglich ?

Mfg

RW


----------



## kuddeldaddeldu (26. September 2008)

Hi,

versuch's mal so:


```
SELECT k.* FROM Kunden k 
   LEFT JOIN Favoriten f 
   ON k.Ku_id = f.Ku_id
   WHERE f.Ku_id IS NULL
```

LG


----------

