SlideShare una empresa de Scribd logo
1 de 22
Descargar para leer sin conexión
Base de Dados 1
Agenda
Trabalhando com datas e BETEWEN
Funções de Agregação
Outros Operadores
Exercicios
Datas
Para se trabalhar com datas usa-se o # para delimitar
as datas.
SELECT *
FROM Registo
WHERE data > #12/13/2013#;
BETWEEN
O operador between deve ser utilizado quando se
esta a fazer uma pesquisa entre dois valores.
SELECT * FROM Pessoa
WHERE idade >= 10 and idade =< 20

SELECT * FROM Pessoa
WHERE idade between 10 and 20
Funções de Agregação
Também designadas por funções estatísticas, têm por
objectivo obter informação sobre conjuntos de linhas
especificados na cláusula WHERE ou sobre grupos
de linhas indicados na cláusula GROUP BY.
Função

Descrição

COUNT

Devolve o número de linhas

MAX

Devolve o maior valor da coluna

MIN

Devolve o menor valor da coluna

SUM

Devolve a soma de todos os valores da coluna

AVG

Devolve a média de todos os valores da coluna
COUNT
A função de agregação COUNT devolve o número
de linhas que resultam num SELECT. Pode ser
utilizada de três formas distintas:
Forma

Descrição

COUNT(*)

Devolve o número de linhas que resulta de um SELECT

COUNT(coluna)

Devolve o número de ocorrências da coluna diferentes de NULL

COUNT(DISTINCT COLUNA)

Devolve o número de ocorrências (sem repetições) na coluna
COUNT-Exemplos
Quantas pessoas existem na tabela?
SELECT COUNT(*)
FROM Pessoa
Quantos pessoas com idade = 18 existem?
SELECT COUNT(idade)
FROM Pessoa
WHERE idade = 18
MIN-MAX
Permitem obter o menor e o maior valor de uma determinada
coluna.
Problema: Qual é o valor do maior salário pago nesta empresa?
SELECT MAX(Salário) as Maior_Salário
FROM Pessoa
Problema: Qual a idade do empregado mais novo?
SELECT MIN(Idade) as Menor_Idade
FROM Pessoa
Nota: As funções MIN e MAX podem ser aplicadas a colunas que
não contenham valores numéricos. No caso de serem aplicadas a
campos do tipo String, são devolvidos os menores e maiores
valores alfabeticamente.
SUM-AVG
A função SUM devolve a soma de uma determinada
coluna.
A função AVG devolve a média
Problema: Selecionar o salário médio das pessoas com
mais de 30 anos.
SELECT AVG(salário)
FROM Pessoa WHERE idade > 30

Nota: As funções SUM e AVG apenas podem ser
aplicadas a campos numéricos.
Agrupando Informação
Para agrupar informação utilizamos as Clausulas
GROUP BY e HAVING
SELECT campo1, campo2,…, campon
FROM tabela1, …, tabela n
[WHERE condição]
[GROUP BY …]
[HAVING …]
[ORDER BY …]
GROUP BY
Está intimamente ligada às funções de agregação,
pois é do nosso interesse agrupar informação,
obtendo em seguida valores estatísticos sobre os
grupos formados.
A cláusula GROUP BY divide o resultado de um
SELECT em grupos de resultados que irão ser
tratados com as funções de agregação
WHERE VS HAVING
Por vezes surge a dúvida sobre quando utilizar a cláusula
WHERE ou a cláusula HAVING para restringir o
conjunto de registos a apresentar.
Utiliza-se a cláusula WHERE sempre que se pretenda
restringir os registos a considerar na seleção.
A cláusula HAVING serve para restringir os grupos que
foram formados depois de aplicada a restrição na cláusula
WHERE.
Se se utilizar a cláusula WHERE num SELECT contendo
GROUP BY, o conjunto dos registos agrupados é apenas
aquele que resulta da restrição imposta pela cláusula
WHERE.
HAVING
Serve para fazer restrições ao nível dos grupos que
são processados.
Se pretendermos mostrar os grupos que apresentam
uma característica em particular, não utilizamos a
cláusula WHERE, pois esta destina-se à restrição de
linhas. Utiliza-se a cláusula HAVING, que atua
unicamente sobre o resultado dos grupos.
SubQueries
É o conceito de termos queries dentro de queries
Ora, sendo o resultado de qualquer comando
SELECT uma tabela, podemos então utilizar os
resultados devolvidos nessa tabela e incorporá-los
noutro comando SELECT que deles necessite.
SubQuery - Exemplo
Problema: Qual o nome da pessoa com menor
salário?
Resolução: Temos aqui dois problemas para
resolver:
P1: Qual o valor do menor salário?
P2: Qual o nome da pessoa a quem esse salário
pertence?
SubQuery - Exemplo
SELECT MIN(salário)AS menorSalário
FROM Pessoa
Supondo que devolve 1000
SELECT nome
FROM pessoa
WHERE salário = 86000

No entanto podemos simplificar
a solução apresentada.

SELECT nome
FROM pessoa
WHERE salário = (SELECT MIN(salário)
FROM Pessoa)
Operador Exists
SELECT …
FROM …
WHERE [NOT]EXISTS(SubQuery)
O operador EXISTS é um operador unário que
verifica se, da execução de uma subquery, resultou
alguma linha
Operador ALL
SELECT nome, idade
FROM pessoa
WHERE códigoLocal <> ALL(SELECT código FROM
localidade WHERE ilha = ”Santiago”)
Selecionar o nome e idade de todas as pessoas que
não vive na ilha de Santiago.
Operador ANY
SELECT Nome, Idade
FROM Pessoa WHERE códigoLocal = ANY (SELECT
código FROM postal WHERE ilha <> ”Santiago”)
Seleccionar o nome e idade de todas as pessoas que
não vive na ilha de Santiago
Operador IN
O operador IN serve para se especificar multiplos
valores na clausula WHERE
SELECT column_name(s)
FROM table_name
WHERE column_name IN (value1,value2,...);

Exemplo:
SELECT * FROM Customers
WHERE City IN ('Paris','London');
Operador Like
O operador like é utilizado para procurar um padrão
especifico numa coluna utilizando WILDCARDS
SELECT column_name(s)
FROM table_name
WHERE column_name LIKE pattern;
SELECT * FROM Customers
WHERE City LIKE 's%';
WILDCARDS
Wildcard
% ou *

Descrição
Substitui Vários Caracteres

_ ou ?

Substitui 1 caracter

Más contenido relacionado

La actualidad más candente

La actualidad más candente (18)

Sql basico postgresql_v12
Sql basico postgresql_v12Sql basico postgresql_v12
Sql basico postgresql_v12
 
Fundamentos de SQL - Parte 4 de 8
Fundamentos de SQL - Parte 4 de 8Fundamentos de SQL - Parte 4 de 8
Fundamentos de SQL - Parte 4 de 8
 
Fundamentos de SQL - Parte 2 de 8
Fundamentos de SQL - Parte 2 de 8Fundamentos de SQL - Parte 2 de 8
Fundamentos de SQL - Parte 2 de 8
 
12 SQL - Junções / Join
12 SQL - Junções / Join12 SQL - Junções / Join
12 SQL - Junções / Join
 
Criando um banco de dados com MySQL Workbench
Criando um banco de dados com MySQL WorkbenchCriando um banco de dados com MySQL Workbench
Criando um banco de dados com MySQL Workbench
 
Inner Join
Inner JoinInner Join
Inner Join
 
Fundamentos SQL - Microsoft SQL Server 2019 - Parte 1/8
Fundamentos SQL - Microsoft SQL Server 2019 - Parte 1/8Fundamentos SQL - Microsoft SQL Server 2019 - Parte 1/8
Fundamentos SQL - Microsoft SQL Server 2019 - Parte 1/8
 
Fundamentos SQL - Microsoft SQL Server 2019 - Parte 3/8
Fundamentos SQL - Microsoft SQL Server 2019 - Parte 3/8Fundamentos SQL - Microsoft SQL Server 2019 - Parte 3/8
Fundamentos SQL - Microsoft SQL Server 2019 - Parte 3/8
 
Um pouco sobre sql
Um pouco sobre sqlUm pouco sobre sql
Um pouco sobre sql
 
Apostila de sql oracle
Apostila de sql oracleApostila de sql oracle
Apostila de sql oracle
 
apostila de sql - oracle
 apostila de sql - oracle  apostila de sql - oracle
apostila de sql - oracle
 
Sql linguagem
Sql linguagemSql linguagem
Sql linguagem
 
Apostila de sql
Apostila de sqlApostila de sql
Apostila de sql
 
apostila-de-sql
apostila-de-sqlapostila-de-sql
apostila-de-sql
 
Aula 250309
Aula 250309Aula 250309
Aula 250309
 
Apostila formulas excel
Apostila formulas excelApostila formulas excel
Apostila formulas excel
 
Formulas excel
Formulas excelFormulas excel
Formulas excel
 
Formulas excel
Formulas excelFormulas excel
Formulas excel
 

Similar a Aula 7 sql - select

BD I - Aula 13 B - Agrupando Dados - Parte 04
BD I - Aula 13 B - Agrupando Dados  - Parte 04BD I - Aula 13 B - Agrupando Dados  - Parte 04
BD I - Aula 13 B - Agrupando Dados - Parte 04Rodrigo Kiyoshi Saito
 
Principais instruções em sql
Principais instruções em sqlPrincipais instruções em sql
Principais instruções em sqlCharleston Anjos
 
BD I - Aula 14 A - Limitando Conj Dados e Sub Selects
BD I - Aula 14 A - Limitando Conj Dados e Sub SelectsBD I - Aula 14 A - Limitando Conj Dados e Sub Selects
BD I - Aula 14 A - Limitando Conj Dados e Sub SelectsRodrigo Kiyoshi Saito
 
Sql - Comandos dml do mysql - parte 1
Sql - Comandos dml do mysql - parte 1Sql - Comandos dml do mysql - parte 1
Sql - Comandos dml do mysql - parte 1Arley Rodrigues
 
Banco II - PostgreSQL - Filtros
Banco II - PostgreSQL - FiltrosBanco II - PostgreSQL - Filtros
Banco II - PostgreSQL - FiltrosGustavo Sávio
 
Revisao_SQL_Parte_I.ppt
Revisao_SQL_Parte_I.pptRevisao_SQL_Parte_I.ppt
Revisao_SQL_Parte_I.ppta08008
 
Apostila de sql oracle (pt br)
Apostila de sql   oracle (pt br)Apostila de sql   oracle (pt br)
Apostila de sql oracle (pt br)Sandro Freitas
 
Curso de PostgreSQL: Um pouco Além dos Comandos
Curso de PostgreSQL: Um pouco Além dos ComandosCurso de PostgreSQL: Um pouco Além dos Comandos
Curso de PostgreSQL: Um pouco Além dos ComandosMarcos Thomaz
 
Conceitos Basicos em Banco de Dados
Conceitos Basicos em Banco de DadosConceitos Basicos em Banco de Dados
Conceitos Basicos em Banco de DadosAlefe Variani
 
Introdução a Banco de Dados (Parte 3)
Introdução a Banco de Dados (Parte 3)Introdução a Banco de Dados (Parte 3)
Introdução a Banco de Dados (Parte 3)Mario Sergio
 
Excel Intermediário
Excel IntermediárioExcel Intermediário
Excel Intermediárioaprcds
 
A06_BD_Linguagem_SQL_SELECT.pdf
A06_BD_Linguagem_SQL_SELECT.pdfA06_BD_Linguagem_SQL_SELECT.pdf
A06_BD_Linguagem_SQL_SELECT.pdfssuser4051be1
 

Similar a Aula 7 sql - select (20)

BD I - Aula 13 B - Agrupando Dados - Parte 04
BD I - Aula 13 B - Agrupando Dados  - Parte 04BD I - Aula 13 B - Agrupando Dados  - Parte 04
BD I - Aula 13 B - Agrupando Dados - Parte 04
 
Principais instruções em sql
Principais instruções em sqlPrincipais instruções em sql
Principais instruções em sql
 
BD I - Aula 14 A - Limitando Conj Dados e Sub Selects
BD I - Aula 14 A - Limitando Conj Dados e Sub SelectsBD I - Aula 14 A - Limitando Conj Dados e Sub Selects
BD I - Aula 14 A - Limitando Conj Dados e Sub Selects
 
Sql - Comandos dml do mysql - parte 1
Sql - Comandos dml do mysql - parte 1Sql - Comandos dml do mysql - parte 1
Sql - Comandos dml do mysql - parte 1
 
Aula 12 banco de dados
Aula 12   banco de dadosAula 12   banco de dados
Aula 12 banco de dados
 
Banco II - PostgreSQL - Filtros
Banco II - PostgreSQL - FiltrosBanco II - PostgreSQL - Filtros
Banco II - PostgreSQL - Filtros
 
Revisao_SQL_Parte_I.ppt
Revisao_SQL_Parte_I.pptRevisao_SQL_Parte_I.ppt
Revisao_SQL_Parte_I.ppt
 
Aula 23 - Excel 2010
Aula 23 - Excel 2010Aula 23 - Excel 2010
Aula 23 - Excel 2010
 
06 Trabalhando com registros
06 Trabalhando com registros06 Trabalhando com registros
06 Trabalhando com registros
 
Consultas SQL
Consultas SQLConsultas SQL
Consultas SQL
 
Agrupamento
AgrupamentoAgrupamento
Agrupamento
 
Agrupamento
AgrupamentoAgrupamento
Agrupamento
 
08 sql - parte 02
08   sql - parte 0208   sql - parte 02
08 sql - parte 02
 
Aula 300309
Aula 300309Aula 300309
Aula 300309
 
Apostila de sql oracle (pt br)
Apostila de sql   oracle (pt br)Apostila de sql   oracle (pt br)
Apostila de sql oracle (pt br)
 
Curso de PostgreSQL: Um pouco Além dos Comandos
Curso de PostgreSQL: Um pouco Além dos ComandosCurso de PostgreSQL: Um pouco Além dos Comandos
Curso de PostgreSQL: Um pouco Além dos Comandos
 
Conceitos Basicos em Banco de Dados
Conceitos Basicos em Banco de DadosConceitos Basicos em Banco de Dados
Conceitos Basicos em Banco de Dados
 
Introdução a Banco de Dados (Parte 3)
Introdução a Banco de Dados (Parte 3)Introdução a Banco de Dados (Parte 3)
Introdução a Banco de Dados (Parte 3)
 
Excel Intermediário
Excel IntermediárioExcel Intermediário
Excel Intermediário
 
A06_BD_Linguagem_SQL_SELECT.pdf
A06_BD_Linguagem_SQL_SELECT.pdfA06_BD_Linguagem_SQL_SELECT.pdf
A06_BD_Linguagem_SQL_SELECT.pdf
 

Más de Hélio Martins

Aula 9 insert, update e delete
Aula 9   insert, update e deleteAula 9   insert, update e delete
Aula 9 insert, update e deleteHélio Martins
 
Aula 5 normalização dos dados
Aula 5   normalização dos dadosAula 5   normalização dos dados
Aula 5 normalização dos dadosHélio Martins
 
Aula 4 modelo relacional
Aula 4   modelo relacionalAula 4   modelo relacional
Aula 4 modelo relacionalHélio Martins
 
Aula 3 modelagem de dados
Aula 3   modelagem de dadosAula 3   modelagem de dados
Aula 3 modelagem de dadosHélio Martins
 
Aula 2 arquitecturas de sgbd, utilizadores, perfis
Aula 2   arquitecturas de sgbd, utilizadores, perfisAula 2   arquitecturas de sgbd, utilizadores, perfis
Aula 2 arquitecturas de sgbd, utilizadores, perfisHélio Martins
 
Aula 1 introdução a base de dados
Aula 1   introdução a base de dadosAula 1   introdução a base de dados
Aula 1 introdução a base de dadosHélio Martins
 
T aula6-criptografia-certificado e assinatura digital
T aula6-criptografia-certificado e assinatura digitalT aula6-criptografia-certificado e assinatura digital
T aula6-criptografia-certificado e assinatura digitalHélio Martins
 
Trab prático-iteracao1
Trab prático-iteracao1Trab prático-iteracao1
Trab prático-iteracao1Hélio Martins
 
P aula3-trb teorico 2-criptografia
P aula3-trb teorico 2-criptografiaP aula3-trb teorico 2-criptografia
P aula3-trb teorico 2-criptografiaHélio Martins
 
T aula5-criptografia-distribuição de chaves,
T aula5-criptografia-distribuição de chaves,T aula5-criptografia-distribuição de chaves,
T aula5-criptografia-distribuição de chaves,Hélio Martins
 
T aula4-introducao-criptografia
T aula4-introducao-criptografiaT aula4-introducao-criptografia
T aula4-introducao-criptografiaHélio Martins
 
T aula3-politicas de segurança
T aula3-politicas de segurançaT aula3-politicas de segurança
T aula3-politicas de segurançaHélio Martins
 
P aula2-trb teorico 1-ameacas
P aula2-trb teorico 1-ameacasP aula2-trb teorico 1-ameacas
P aula2-trb teorico 1-ameacasHélio Martins
 
T aula2-revisões bases e ip
T aula2-revisões bases e ipT aula2-revisões bases e ip
T aula2-revisões bases e ipHélio Martins
 
T aula1-apresentação
T aula1-apresentaçãoT aula1-apresentação
T aula1-apresentaçãoHélio Martins
 

Más de Hélio Martins (16)

Aula 9 insert, update e delete
Aula 9   insert, update e deleteAula 9   insert, update e delete
Aula 9 insert, update e delete
 
Aula 5 normalização dos dados
Aula 5   normalização dos dadosAula 5   normalização dos dados
Aula 5 normalização dos dados
 
Aula 4 modelo relacional
Aula 4   modelo relacionalAula 4   modelo relacional
Aula 4 modelo relacional
 
Aula 3 modelagem de dados
Aula 3   modelagem de dadosAula 3   modelagem de dados
Aula 3 modelagem de dados
 
Aula 2 arquitecturas de sgbd, utilizadores, perfis
Aula 2   arquitecturas de sgbd, utilizadores, perfisAula 2   arquitecturas de sgbd, utilizadores, perfis
Aula 2 arquitecturas de sgbd, utilizadores, perfis
 
Aula 1 introdução a base de dados
Aula 1   introdução a base de dadosAula 1   introdução a base de dados
Aula 1 introdução a base de dados
 
Aula 0 apresentação
Aula 0   apresentaçãoAula 0   apresentação
Aula 0 apresentação
 
T aula6-criptografia-certificado e assinatura digital
T aula6-criptografia-certificado e assinatura digitalT aula6-criptografia-certificado e assinatura digital
T aula6-criptografia-certificado e assinatura digital
 
Trab prático-iteracao1
Trab prático-iteracao1Trab prático-iteracao1
Trab prático-iteracao1
 
P aula3-trb teorico 2-criptografia
P aula3-trb teorico 2-criptografiaP aula3-trb teorico 2-criptografia
P aula3-trb teorico 2-criptografia
 
T aula5-criptografia-distribuição de chaves,
T aula5-criptografia-distribuição de chaves,T aula5-criptografia-distribuição de chaves,
T aula5-criptografia-distribuição de chaves,
 
T aula4-introducao-criptografia
T aula4-introducao-criptografiaT aula4-introducao-criptografia
T aula4-introducao-criptografia
 
T aula3-politicas de segurança
T aula3-politicas de segurançaT aula3-politicas de segurança
T aula3-politicas de segurança
 
P aula2-trb teorico 1-ameacas
P aula2-trb teorico 1-ameacasP aula2-trb teorico 1-ameacas
P aula2-trb teorico 1-ameacas
 
T aula2-revisões bases e ip
T aula2-revisões bases e ipT aula2-revisões bases e ip
T aula2-revisões bases e ip
 
T aula1-apresentação
T aula1-apresentaçãoT aula1-apresentação
T aula1-apresentação
 

Aula 7 sql - select

  • 2. Agenda Trabalhando com datas e BETEWEN Funções de Agregação Outros Operadores Exercicios
  • 3. Datas Para se trabalhar com datas usa-se o # para delimitar as datas. SELECT * FROM Registo WHERE data > #12/13/2013#;
  • 4. BETWEEN O operador between deve ser utilizado quando se esta a fazer uma pesquisa entre dois valores. SELECT * FROM Pessoa WHERE idade >= 10 and idade =< 20 SELECT * FROM Pessoa WHERE idade between 10 and 20
  • 5. Funções de Agregação Também designadas por funções estatísticas, têm por objectivo obter informação sobre conjuntos de linhas especificados na cláusula WHERE ou sobre grupos de linhas indicados na cláusula GROUP BY. Função Descrição COUNT Devolve o número de linhas MAX Devolve o maior valor da coluna MIN Devolve o menor valor da coluna SUM Devolve a soma de todos os valores da coluna AVG Devolve a média de todos os valores da coluna
  • 6. COUNT A função de agregação COUNT devolve o número de linhas que resultam num SELECT. Pode ser utilizada de três formas distintas: Forma Descrição COUNT(*) Devolve o número de linhas que resulta de um SELECT COUNT(coluna) Devolve o número de ocorrências da coluna diferentes de NULL COUNT(DISTINCT COLUNA) Devolve o número de ocorrências (sem repetições) na coluna
  • 7. COUNT-Exemplos Quantas pessoas existem na tabela? SELECT COUNT(*) FROM Pessoa Quantos pessoas com idade = 18 existem? SELECT COUNT(idade) FROM Pessoa WHERE idade = 18
  • 8. MIN-MAX Permitem obter o menor e o maior valor de uma determinada coluna. Problema: Qual é o valor do maior salário pago nesta empresa? SELECT MAX(Salário) as Maior_Salário FROM Pessoa Problema: Qual a idade do empregado mais novo? SELECT MIN(Idade) as Menor_Idade FROM Pessoa Nota: As funções MIN e MAX podem ser aplicadas a colunas que não contenham valores numéricos. No caso de serem aplicadas a campos do tipo String, são devolvidos os menores e maiores valores alfabeticamente.
  • 9. SUM-AVG A função SUM devolve a soma de uma determinada coluna. A função AVG devolve a média Problema: Selecionar o salário médio das pessoas com mais de 30 anos. SELECT AVG(salário) FROM Pessoa WHERE idade > 30 Nota: As funções SUM e AVG apenas podem ser aplicadas a campos numéricos.
  • 10. Agrupando Informação Para agrupar informação utilizamos as Clausulas GROUP BY e HAVING SELECT campo1, campo2,…, campon FROM tabela1, …, tabela n [WHERE condição] [GROUP BY …] [HAVING …] [ORDER BY …]
  • 11. GROUP BY Está intimamente ligada às funções de agregação, pois é do nosso interesse agrupar informação, obtendo em seguida valores estatísticos sobre os grupos formados. A cláusula GROUP BY divide o resultado de um SELECT em grupos de resultados que irão ser tratados com as funções de agregação
  • 12. WHERE VS HAVING Por vezes surge a dúvida sobre quando utilizar a cláusula WHERE ou a cláusula HAVING para restringir o conjunto de registos a apresentar. Utiliza-se a cláusula WHERE sempre que se pretenda restringir os registos a considerar na seleção. A cláusula HAVING serve para restringir os grupos que foram formados depois de aplicada a restrição na cláusula WHERE. Se se utilizar a cláusula WHERE num SELECT contendo GROUP BY, o conjunto dos registos agrupados é apenas aquele que resulta da restrição imposta pela cláusula WHERE.
  • 13. HAVING Serve para fazer restrições ao nível dos grupos que são processados. Se pretendermos mostrar os grupos que apresentam uma característica em particular, não utilizamos a cláusula WHERE, pois esta destina-se à restrição de linhas. Utiliza-se a cláusula HAVING, que atua unicamente sobre o resultado dos grupos.
  • 14. SubQueries É o conceito de termos queries dentro de queries Ora, sendo o resultado de qualquer comando SELECT uma tabela, podemos então utilizar os resultados devolvidos nessa tabela e incorporá-los noutro comando SELECT que deles necessite.
  • 15. SubQuery - Exemplo Problema: Qual o nome da pessoa com menor salário? Resolução: Temos aqui dois problemas para resolver: P1: Qual o valor do menor salário? P2: Qual o nome da pessoa a quem esse salário pertence?
  • 16. SubQuery - Exemplo SELECT MIN(salário)AS menorSalário FROM Pessoa Supondo que devolve 1000 SELECT nome FROM pessoa WHERE salário = 86000 No entanto podemos simplificar a solução apresentada. SELECT nome FROM pessoa WHERE salário = (SELECT MIN(salário) FROM Pessoa)
  • 17. Operador Exists SELECT … FROM … WHERE [NOT]EXISTS(SubQuery) O operador EXISTS é um operador unário que verifica se, da execução de uma subquery, resultou alguma linha
  • 18. Operador ALL SELECT nome, idade FROM pessoa WHERE códigoLocal <> ALL(SELECT código FROM localidade WHERE ilha = ”Santiago”) Selecionar o nome e idade de todas as pessoas que não vive na ilha de Santiago.
  • 19. Operador ANY SELECT Nome, Idade FROM Pessoa WHERE códigoLocal = ANY (SELECT código FROM postal WHERE ilha <> ”Santiago”) Seleccionar o nome e idade de todas as pessoas que não vive na ilha de Santiago
  • 20. Operador IN O operador IN serve para se especificar multiplos valores na clausula WHERE SELECT column_name(s) FROM table_name WHERE column_name IN (value1,value2,...); Exemplo: SELECT * FROM Customers WHERE City IN ('Paris','London');
  • 21. Operador Like O operador like é utilizado para procurar um padrão especifico numa coluna utilizando WILDCARDS SELECT column_name(s) FROM table_name WHERE column_name LIKE pattern; SELECT * FROM Customers WHERE City LIKE 's%';
  • 22. WILDCARDS Wildcard % ou * Descrição Substitui Vários Caracteres _ ou ? Substitui 1 caracter