34
SQL - Subconsultas Aula 6 - Simone Dominico

SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

  • Upload
    others

  • View
    10

  • Download
    0

Embed Size (px)

Citation preview

Page 1: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

SQL - SubconsultasAula 6 - Simone Dominico

Page 2: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Usando SubconsultasQuem possui o salário maior que João?

Consulta Principal: Que funcionário possui um salário maior que João?

Qual é o salário de João?

Page 3: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Usando SubconsultasSELECT coluna1, coluna2 FROM tabela WHERE opr expre (SELECT coluna FROM tabela);

Page 4: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Usando SubconsultasSELECT coluna1, coluna2 FROM tabela WHERE opr expre (SELECT coluna FROM tabela);Subconsulta normalmente executa primeiro

Page 5: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Usando Subconsultas

Selecionar o preço total de uma encomenda, em que o preço total seja menor que o componente 776

Page 6: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Usando Subconsultas

Page 7: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Usando Subconsultas

Page 8: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Usando Subconsultas

Subconsulta entre ()Lado direito do

operador de comparação

Page 9: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Usando Subconsultas

Operador de comparação de uma

única linha, com subconsultas de uma

única linha

Page 10: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Usando Subconsultas

Operador de comparação de várias

linhas, com subconsultas de várias

linhas

Page 11: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Usando Subconsultas

Page 12: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Tipos SubconsultasSubconsulta de uma única linha

Page 13: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Tipos SubconsultasSubconsulta de uma única linha

Page 14: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Tipos SubconsultasSubconsulta com funções de grupo

Page 15: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Tipos SubconsultasSubconsulta com funções de grupo

Page 16: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Tipos SubconsultasHAVING com subconsultas

Page 17: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Essa consulta retorna valores?

Page 18: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Essa consulta retorna valores?

Operador de uma única linha

com sub

consulta de várias

linhas.

Page 19: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Subconsulta de várias linhas

Retorna mais de uma linha: IN: igual a qualquer membro da lista. ANY: Compare com cada valor retornado. ALL: Compare o valor com todos os valores retornados.

Page 20: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Subconsulta de várias linhas - IN

Page 21: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Subconsulta de várias linhas - ANY

"= ANY (subconsulta)" mesmo IN:

Selecionar o preço total das encomendas com o preço total igual ao preço estendido mínimo dos modos de

modo de envio

Page 22: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Subconsulta de várias linhas - ANY

Retorno Subconsulta

O preço total de retorno da consulta principal tem que ser igual a qualquer valor da

subconsulta

Page 23: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Subconsulta de várias linhas - ANY

Nenhum preço total é igual ao mínimo dos modos de envio

Page 24: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Subconsulta de várias linhas - ANY

verdadeiro se o atributo comparado for menor que algum valor de atributo das tuplas resultantes da subconsulta :

Selecionar o preço total das encomendas com o preço total menor que o preço estendido mínimo dos modos

de modo de envio

Page 25: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Subconsulta de várias linhas - ANY

Retorno Subconsulta

O preço total de retorno da consulta principal

tem que menor a qualquer valor da

subconsulta

Page 26: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Subconsulta de várias linhas - ANY

20 linhas

Menor que algum valor do retorno da subconsulta

Page 27: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Subconsulta de várias linhas - ALL

Condição a ser satisfeita para todos os elementos de um conjunto

Selecionar o preço total das encomendas com o preço total menor que todos os preços estendido mínimo

dos modos de modo de envio

Page 28: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Subconsulta de várias linhas - ANY

Retorno Subconsulta

O preço total de retorno da consulta principal tem que ser igual a qualquer valor da

subconsulta

Page 29: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Subconsulta de várias linhas - ALL

Todos os preços menores que o preço

extendido mínimo dos modos de envio.

Page 30: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Subconsulta

São úteis quando uma consulta baseia-se em valores desconhecidos.

Page 31: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Exercícios1. Exibir o nome dos componentes (part) em que o preço de varejo é menor que a média das contas de clientes.

Page 32: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Exercícios2. Exibir o nome dos componentes (part) em que a média do preço de varejo menor que a média das contas de clientes.

Page 33: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Exercícios3. Exibir o status das encomendas (orders) em que o cliente pertença ao BRAZIL.

Page 34: SQL - Subconsultas · SQL - Subconsultas Aula 6 - Simone Dominico. Usando Subconsultas Quem possui o salário maior que João? Consulta Principal: Que funcionário possui um salário

Exercícios4. Exibir os comentários das contas e pedidos (lineitem) em que a quantidade (lineitem) é igual a qualquer tamanho dos componentes (part) do tipo LARGE POLISHED COPPER e com a data de envio entre 27/07/1998 e 31/12/1998.