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.