Not In
Em PostgreSQL, a cláusula NOT IN
é usada em conjunto com a cláusula WHERE
para verificar se uma expressão não corresponde a nenhum valor em uma lista específica de valores. A cláusula NOT IN
é uma negação da cláusula IN
. A sintaxe básica é a seguinte:
SELECT coluna1, coluna2, ...
FROM nome_da_tabela
WHERE coluna NOT IN (valor1, valor2, ...);
Aqui estão alguns exemplos de como usar a cláusula NOT IN
:
1. Excluir Registros com Valores Específicos:
SELECT nome
FROM alunos
WHERE idade NOT IN (18, 19, 20);
Este comando retorna os nomes dos alunos cuja idade não é 18, 19 ou 20.
2. Excluir Registros com Base em Outra Consulta:
SELECT nome
FROM alunos
WHERE id NOT IN (SELECT aluno_id FROM matriculas WHERE curso_id = 1);
Este comando retorna os nomes dos alunos que não estão matriculados no curso com curso_id = 1
.
3. Excluir Registros com Base em Valores de Texto:
SELECT nome
FROM clientes
WHERE tipo NOT IN ('Premium', 'Ouro', 'Prata');
Este comando retorna os nomes dos clientes cujo tipo não é ‘Premium’, ‘Ouro’ ou ‘Prata’.
A cláusula NOT IN
é útil quando você deseja excluir registros que correspondem a uma lista específica de valores. Ela é uma maneira eficaz e conveniente de filtrar dados em consultas SQL no PostgreSQL.