wählen Sie Werte aus einer Tabelle, in denen ausschließen, die Werte in einer anderen Tabelle
Ich bin mit PostgreSQL-Datenbank. Ich möchte eine Spalte mit Werten aus einer Tabelle durch den Ausschluss der Werte existiert, die in einer anderen Tabelle.
select id from mytable where exclude(select id from another table)
In der Ersten Tabelle vorhanden, id:
101,102,103,104,105
In der zweiten Tabelle vorhanden, id:
101,104
Ich soll Ergebnis:
102,103,105 (excluded values exist in second table)
Wie Sie schreiben-Abfrage dafür?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen
oder
ìd
null sein kann, inanother_table
die erste Abfrage funktioniert nicht. In diesem Fall wird einewhere id is not null
muss Hinzugefügt werden, um die sub-selectMit einem LEFT JOIN ein NULL IST, ist auch eine option:
Habe ich versucht die Lösung von "user554546" Nicht wissen, was passiert war, auf mein Beispiel, aber ich hatte zu Select Distinct seit ich einmal zwei Werte in another_table dann meine Tabelle, die zeigen würde, ungefilterten Werte doppelt.
Lässt also sagen another_table hatte
main_table hatte
Nachdem ich die Abfrage main_table würde, zeigen die folgenden
Distinct scheint sich zu lösen, aber irgendwelche Ideen, warum war das passiert?