Como usar operadores lógicos AND, OR, NOT em consultas SQL?
Os operadores lógicos AND, OR e NOT são usados no SQL para combinar condições em consultas e tornar os filtros mais flexíveis e precisos.
Usando AND para combinar condições
O operador AND retorna apenas os registros que atendem a todas as condições especificadas.
SELECT * FROM clientes WHERE cidade = 'São Paulo' AND idade > 30;
Aqui, a consulta retorna apenas os clientes de São Paulo com idade maior que 30.
Usando OR para ampliar resultados
O operador OR retorna registros que atendem a pelo menos uma das condições especificadas.
SELECT * FROM pedidos WHERE status = 'pendente' OR status = 'processando';
Isso retorna pedidos que estejam pendentes ou em processamento.
Usando NOT para negar uma condição
O operador NOT inverte a condição, retornando registros que não atendem ao critério especificado.
SELECT * FROM clientes WHERE NOT cidade = 'Rio de Janeiro';
Essa consulta retorna todos os clientes que não moram no Rio de Janeiro.
Combinando operadores
Podemos combinar AND, OR e NOT para criar filtros complexos:
SELECT * FROM produtos WHERE categoria = 'Eletrônicos' AND (preco > 500 OR estoque > 10) AND NOT fornecedor = 'XYZ';
Essa consulta retorna produtos da categoria Eletrônicos, que tenham preço maior que 500 ou estoque superior a 10, mas que não sejam do fornecedor "XYZ".
Por que operadores lógicos são fundamentais em consultas SQL?
Os operadores lógicos são essenciais para consultas SQL mais refinadas, pois permitem filtrar registros com base em múltiplos critérios. Em um banco de dados real, raramente uma consulta se baseia em um único critério; a combinação de AND, OR e NOT possibilita buscas detalhadas e precisas. Quando aplicados corretamente, esses operadores ajudam a melhorar o desempenho do banco de dados ao reduzir a quantidade de registros retornados desnecessariamente. Além disso, é sempre uma boa prática usar parênteses para garantir a ordem correta de precedência nas expressões lógicas.
Algumas aplicações:
- Filtrar clientes por múltiplos critérios em um CRM
- Buscar pedidos com status diferentes para relatórios de vendas
- Selecionar usuários com combinações específicas de atributos
- Otimizar consultas complexas em grandes bancos de dados
- Garantir precisão nos filtros em sistemas financeiros
Dicas para quem está começando
- Use
AND
para combinar condições obrigatórias - Use
OR
para incluir mais possibilidades no filtro - Utilize
NOT
para excluir registros que atendem a uma condição - Use parênteses para organizar melhor consultas complexas
- Teste sua consulta com
SELECT *
antes de aplicá-la em produção
Contribuições de Carla Nunes