A cláusula WHERE é uma parte opcional da
ExpressãoSeleção,Instrução DELETE e da
Instrução UPDATE.
A cláusula WHERE permite selecionar linhas baseado em uma expressão booleana.
Somente as linhas para as quais a expressão é avaliada como TRUE são retornadas
no resultado, ou no caso da instrução DELETE, excluídas, ou no caso da
instrução UPDATE, atualizadas.
SintaxeWHERE Expressão booleana
Cláusula WHEREExtensões ao SQL
São permitidas expressões booleanas na cláusula WHERE.
A maioria das expressões gerais listadas na
podem resultar em um valor booleano.
Além disso, lá estão as expressões booleanas mais comuns.
Os operadores booleanos específicos listados na Tabela 10 recebem um ou mais
operandos; as expressões retornam um valor booleano.
-- descobrir os vôos onde nenhum assento da
-- classe executiva foi reservado
SELECT *
FROM DISPONIBILIDADE_VÔO
WHERE ASSENTOS_EXECUTIVOS_OCUPADOS IS NULL
OR ASSENTOS_EXECUTIVOS_OCUPADOS = 0
-- Junção das tabelas ATIV_EMP e EMPREGADOS
-- selecionar todas as colunas da tabela ATIV_EMP, e adicionar o
-- sobrenome do empregado (ÚLTIMO_NOME) da tabela EMPREGADOS
-- a todas as linhas do resultado.
SELECT SAMP.ATIV_EMP.*, ÚLTIMO_NOME
FROM SAMP.ATIV_EMP, SAMP.EMPREGADOS
WHERE ATIV_EMP.NUM_EMP = EMPREGADOS.NUM_EMP;
-- Determinar o número do empregado e o salário dos representantes de venda
-- junto com o salário médio e a conta principal de seus departamentos.
-- Esta consulta deverá criar primeiro um novo-nome-de-coluna especificado
-- na cláusula AS, que está fora do FULLSELECT (DINFO),
-- para obter as colunas SALÁRIO_MÉDIO e CONTA_EMP,
-- assim como a coluna NUM_DEP utilizada na cláusula WHERE
SELECT THIS_EMP.NUM_EMP, THIS_EMP.SALÁRIO, DINFO.SALÁRIO_MÉDIO, DINFO.CONTA_EMP
FROM EMPREGADOS THIS_EMP,
(SELECT OUTROS.DEP_TRAB AS NUM_DEP,
AVG(OUTROS.SALÁRIO) AS SALÁRIO_MÉDIO,
COUNT(*) AS CONTA_EMP
FROM EMPREGADOS OUTROS
GROUP BY OUTROS.DEP_TRAB
) AS DINFO
WHERE THIS_EMP.CARGO = 'REP_VENDAS'
AND THIS_EMP.DEP_TRAB = DINFO.NUM_DEP;