Cassic

Cláusula WHERE com Condições Complexas

Autor: Tadeu Pereira


  Para filtrar dados que requerem condições complexas utilizamos a cláusula where junto com os operadores comparativos e lógicos.

Sintaxe :

select  Coluna, Coluna, ..., Coluna from  Tabela
where Condição Operador_Lógico Condição


Tabela
Nome da tabela
Coluna
Nome de uma coluna – Para mostrar todas as colunas pode-se colocar apenas a máscara "*" no lugar do nome das colunas
Condição
Cria uma condição para filtrar os dados utilizando os operadores comparativos
Operador_Lógico
Operador lógico and ou or para unir as duas condições no mesmo filtro

  As condições complexas seguem regras de precedência descritas abaixo:


Ordem
Precedência
1
Expressões entre parênteses "(...)"
2
Todos os operadores de comparação "=,<>,>,>=,<,<=,in..."
3
Operador lógico and
4
Operador lógico or

  Caso duas condições estejam na mesma ordem de precedência, terá maior precedência a que estiver mais próxima da cláusula where.

Operador Lógico "and" (E)

Exemplo :

select Codigo, Nome from Funcion
where Setor is not null and Codigo = 1

Resultado


Codigo
Nome
1
Tadeu

Operador Lógico "or" (OU)

Exemplo :

select Codigo, Nome from Funcion
where Nome = ‘Tadeu’ or Nome = ‘Ylane’

Resultado


Codigo
Nome
1
Tadeu
2
Ylane