Wybierz wiersze, które nie występują w innej tabeli
Mam dwie tabele postgresql:
table name column names
----------- ------------------------
login_log ip | etc.
ip_location ip | location | hostname | etc.
Chcę uzyskać każdy adres IPlogin_log
który nie ma rzęduip_location
.
Próbowałem tej kwerendy, ale zgłasza błąd składniowy.
SELECT login_log.ip
FROM login_log
WHERE NOT EXIST (SELECT ip_location.ip
FROM ip_location
WHERE login_log.ip = ip_location.ip)
ERROR: syntax error at or near "SELECT"
LINE 3: WHERE NOT EXIST (SELECT ip_location.ip`
Zastanawiam się również, czy to zapytanie (z poprawkami umożliwiającymi jego działanie) jest najlepiej działającym zapytaniem do tego celu.