Selecione linhas que não estão presentes em outra tabela

Eu tenho duas tabelas postgresql:

table name     column names
-----------    ------------------------
login_log      ip | etc.
ip_location    ip | location | hostname | etc.

Quero que todos os endereços IP sejamlogin_log que não tem uma linha emip_location.
Eu tentei esta consulta, mas lança um erro de sintaxe.

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`

Também estou me perguntando se essa consulta (com ajustes para que funcione) é a consulta com melhor desempenho para essa finalidade.

questionAnswers(4)

yourAnswerToTheQuestion