Middle
Escreva uma consulta SQL: existe uma tabela de clientes (clients) e uma tabela de lista negra (blacklist) com um campo id. Precisa selecionar todos os clientes que não estão na lista negra. Sugira várias soluções.
sobes.tech IA
Resposta da IA
Para selecionar clientes que não estão na lista negra, pode usar várias opções de consultas SQL:
- Uso de LEFT JOIN com verificação de NULL:
SELECT c.*
FROM clients c
LEFT JOIN blacklist b ON c.id = b.id
WHERE b.id IS NULL;
- Uso de NOT IN:
SELECT *
FROM clients
WHERE id NOT IN (SELECT id FROM blacklist);
- Uso de NOT EXISTS:
SELECT *
FROM clients c
WHERE NOT EXISTS (
SELECT 1 FROM blacklist b WHERE b.id = c.id
);
Cada uma dessas opções tem suas próprias características de desempenho, dependendo do SGBD e do volume de dados.