einfache Abfrage zweier Tabellen

weedy2k

Grünschnabel
Hallo Community

ich habe eine "für euch sicherlich leichte" Anfrage.

Ich habe 2 Tabellen und möchte Einträge aus der einen Tabelle auswählen die einem Suchparameter eintsprechen aber nicht in der anderen Tabelle vorkommen! Im beispiel sieht da so aus:

Tabelle1
ID_tab1
Art
werte

Tabelle2
ID_tab2
ID_User
ID_tab1

Nun möchte ich nur einträge aus Tabelle 1 auswählen deren ART einen bestimmten wert hat. die aber NICHT in Tabelle 2 drin ist. Theoretisch könnten später fast alle einträge auch in der 2. Tabelle sein, so das die ergebnisse immer kleiner werden

meine idee war:

SELECT Tabelle1.ID_tab1 FROM Tabelle1,Tabelle2 WHERE Tabelle1.Art = 3 AND Tabelle1.ID_tab1 <> Tabelle2.ID_tab1

leider funktioniert das nicht und er verknüpft nur jeden eintrag aus Tabelle 2 mit jedem aus dem ersten.

kann mir jemand weiter helfen?

mfg
weedy
 
Was für ein Datenbanksystem verwendest du denn?

Sollte auf jeden Fall so in etwa gehen:
SQL:
SELECT * FROM Tabelle1 
WHERE Art='Art2' AND 
    Tabelle1.ID_tab1 NOT IN (
        SELECT ID_tab1 FROM Tabelle2
     )
 
SQL:
select * from tabelle_1
where tabelle_1 entspricht kriterium
AND id_tab1 not in (
select id_tab2 from tabelle_2
)
 
Zurück