O SQLWHEREA cláusula filtra linhas com base em uma ou mais condições para que sua consulta retorne (ou modifique) apenas os registros correspondentes. É usado em instruções SELECT UPDATE e DELETE e funciona com dados de uma única tabela ou de várias tabelas após junções
Exemplo: Primeiro vamos criar um banco de dados SQL de demonstração e uma tabela na qual usaremos o comando WHERE Clause.
Consulta:
SELECT Name Department Salary
FROM Employees
WHERE Salary > 50000;
Saída:
Sintaxe:
SELECT column1 column2
FROM table_name
WHERE column_name operator value;
- coluna1 coluna2: Colunas que você deseja recuperar.
- nome_tabela: Tabela da qual você está consultando.
- operador: Lógica de comparação (por exemplo =< >COMO).
- valor: O valor ou padrão a ser filtrado.
Exemplos de cláusula WHERE
Criaremos uma estrutura básica de tabela de funcionários em SQL para realizar todas as operações da cláusula where.
Consulta:
CRIAR TABELA Emp1 (
CHAVE PRIMÁRIA EmpID INT
Nome VARCHAR(50)
País VARCHAR(50)
Idade INT
Multidão VARCHAR(15)
);
INSERIR EM VALORES Emp1
(1 'Shubham' 'Índia' 23 '738479734')
(2 'Aman' 'Austrália' 21 '436789555')
(3 'Naveen' 'Sri Lanka' 24 '34873847')
(4 'Aditya' 'Áustria' 21 '328440934')
(5 'Nishant' 'Espanha' 22 '73248679');
SELECIONE* DE Emp1;
Saída:
Exemplo 1: Cláusula Where com Operadores Lógicos
Para buscar registros de funcionários com idade igual a 24 anos.
Consulta:
SELECT * FROM Emp1 WHERE Age=24;Saída:
Exemplo 2: WHERE com operadores de comparação
Para buscar o nome EmpID e país dos funcionários com idade superior a 21 anos.
Consulta:
SELECT EmpID Name Country FROM Emp1 WHERE Age > 21;Saída:
Exemplo 3: Cláusula Where com BETWEEN Operador
O operador BETWEEN é usado para filtrar registros dentro de um intervalo especificado e inclui os valores inicial e final. Neste exemplo, queremos encontrar funcionários com idade entre 22 e 24 anos, incluindo 22 e 24 anos.
Consulta:
SELECT * FROM Emp1
WHERE Age BETWEEN 22 AND 24;
Saída:
Exemplo 4: Cláusula Where com LIKE Operador
É usado para buscar dados filtrados procurando um padrão específico na cláusula where. Neste exemplo queremos encontrar registros de Funcionários onde o Nome começa com a letra. O '%'(curinga) significa os caracteres posteriores aqui, que podem ter qualquer comprimento e valor.
Consulta:
SELECT * FROM Emp1 WHERE Name LIKE 'L%'; Saída:
Exemplo 5: Cláusula Where com IN Operador
Ele é usado para buscar os dados filtrados iguais aos buscados pelo operador '=', mas a diferença é que aqui podemos especificar vários valores para os quais podemos obter o conjunto de resultados. Aqui queremos encontrar os nomes dos funcionários com idade de 21 ou 23 anos.
Consulta:
SELECT Name FROM Emp1 WHERE Age IN (2123);Saída:
Operadores usados na cláusula WHERE
| Operador | Descrição |
|---|---|
| > | Maior que |
| >= | Maior ou igual a |
| < | Menor que |
| <= | Menor ou igual a |
| = | Igual a |
| <> | Não é igual a |
| ENTRE | Em uma faixa inclusiva |
| COMO | Procure um padrão |
| EM | Para especificar vários valores possíveis para uma coluna |