Pplware

Vamos dar uns toques em queries SQL? III

Por Pedro Gaspar para o PPLWARE Depois da semana passada o Pedro Pinto ter iniciado a clausula WHERE, esta semana vamos aprofundar um pouco mais utilizando o AND e o OR. Tal como o nome diz o AND (e) e o OR (ou) são operações lógicas e com estas operações podemos especificar mais os resultados que pretendemos obter inserindo varias clausulas numa só query. Vamos a alguns exemplos:

A utilização do AND ou OR deve seguir a seguinte sintaxe de utilização:

Sintaxe de utilização

SELECT nome_coluna(s)
FROM nome_tabela
WHERE nome_coluna operador valores [AND/OR] nome_coluna operador valores

Para apresentar alguns exemplos, utilizei a tabela tbl_pplware (com algumas alterações desde a semana passada) com os seguintes dados:

Vamos a alguns exemplos práticos:

EXEMPLO 1

Objectivo: Apresentar o nome e o numero de telefone, das pessoas que tiverem numero fixo (em portugal começa por 2) “E” que tiverem o cabelo castanho

Query:

SELECT nome, telefone FROM `tbl_ppware` WHERE cor_cabelo = 'castanho' AND telefone like '2%'

Resultado

EXEMPLO 2

Objectivo: Apresentar o nome e a cor de cabelo das pessoas que tiverem o cor de cabelo louro ou preto

Query:

SELECT nome, cor_cabelo FROM `tbl_ppware` WHERE cor_cabelo = 'louro' OR cor_cabelo = 'preto'

Resultado:

EXEMPLO 3 Objectivo: Apresentar nome e Ano de Nascimento das pessoas que nasceram na década de 70

Query:

SELECT nome, nascimento FROM `tbl_ppware` WHERE nascimento >= 1970 AND nascimento < 1980

Resultado: Tal como acontece nos cálculos matemáticos também no SQL podemos utilizar parênteses para dar prioridade a certas operações, ora vejamos..

EXEMPLO 4 (Para complicar um pouquinho)

Objectivo: Apresentar nome, telefone e morada das pessoas que tenham numero de telefone fixo e que se chamem ‘pedro’ ou vivam no Porto.

Query:

SELECT nome, telefone, morada FROM `tbl_ppware` WHERE telefone between 200000000 AND 299999999 AND (nome like 'pedro%' or morada = 'porto')

Resultado:

Espero que tenham compreendido o funcionamento do AND e do OR em queries. Qualquer questão não hesitem em deixar nos comentários pois terei todo o gosto em responder. Visto que linguagem SQL não é absoluta e permite-nos chegar ao mesmo resultado numa infinidade de maneiras diferentes, convidamos como os exemplos anteriores a criarem queries similares.

Exit mobile version