SlideShare uma empresa Scribd logo
Rodrigo Kiyoshi Saito / rodrigok@anchieta.br
BANCO DE DADOS I
Tópicos abordados
• Limitando conjunto de dados
Limitando o conjunto de
resultados usando operadores
TOP e TABLESAMPLE
• TOP e TABLESAMPLE limita o número de linhas
retornados em um conjunto de resultados;
• Se uma instrução SELECT que inclui TOP e tem uma
cláusula ORDER BY, as linhas a serem retornadas são
selecionadas a partir do conjunto de resultados
ordenados.
• TABLESAMPLE não pode ser aplicado a tabelas
derivadas, tabelas de linked-servers (servidores
vinculados) , tabelas derivadas de funções retorno de
valores, funções de retorno de linhas ou OPENXML;
Limitando o conjunto de
resultados usando operadores
TOP e TABLESAMPLE
• TABLESAMPLE pode ser usado rapidamente no
retorno de uma amostra de uma tabela grande
quando qualquer uma das seguintes condições
for verdadeira;
• A amostra não precisa ser uma amostra real
aleatória no nível de linhas individuais;
• As linhas em páginas individuais da tabela não
estão correlacionados com outras linhas na
mesma página;
Limitando o conjunto de
resultados usando operadores
TOP e TABLESAMPLE
USE ADVENTUREWORKS2017
GO
SELECT TOP (5)
BusinessEntityID,
FirstName,
LastName
FROMPerson.Person
GO
SELECT FirstName, LastName
FROM Person.Person
TABLESAMPLE (1 PERCENT)
GO
SUB-CONSULTAS
• Uma das características do comando Select,
que por vezes passa despercebida, reside no
fato de qualquer comando Select não devolver
dados, linhas ou colunas, mas devolver
sempre uma tabela como resultado de sua
execução.
• O resultado de uma Select é sempre uma
tabela, ainda que da sua execução não resulte
qualquer linha como resultado.
SUB-CONSULTAS
• Isto é particularmente perceptível no fato de
sempre serem atribuídos nomes às colunas
resultantes de um Select, mesmo que estas sejam
constituídas por expressões ou constantes.
• Portanto, sendo o resultado de qualquer
comando Select uma tabela, podemos então
utilizar os resultados devolvidos nessa tabela e
incorporá-los em outro comando Select que
necessite deles.
SUB-CONSULTAS
• Uma subconsulta (subquery) consiste em uma
Select dentro de outro.
Um comando Select pode ser colocado:
• Dentro de um outro Select nas cláusulas Where,
Having, Select e From;
• Dentro de uma outra subconsulta nas mesmas
cláusulas do item anterior;
• Nos comandos INSERT, UPDATE e DELETE.
• Na definição de uma View;
SUB-CONSULTAS
• É esta capacidade que o SQL tem de integrar
comandos SELECT de forma encadeada que fez
com que fosse batizado com o nome de
Structured Query Language (Linguagem
Estruturada de Consultas)
SUB-CONSULTAS
Vejamos como se implementa e utiliza
subconsultas:
• Analisemos o seguinte problema:
• Problema: Qual é o nome da pessoa com o
menor salário na empresa?
• Resolução: Aqui temos dois problemas para
resolver:
– Qual é o valor do menor salário?
– Qual é o nome da pessoa a que esse salário
corresponde?
SUB-CONSULTAS
SELECT Min(salário) as menor FROM pessoa
(SUPOSTA RESPOSTA DE 7400)
SELECT nome From pessoa WHERE SALARIO =
7400
• Até agora, tínhamos que fazer 2 select´s para
resolver esse problema. Agora passamos a
utilizar subselects, como o exemplo mostra:
SUB-CONSULTAS
Select nome
From pessoa
Where salário = (select min(salário) from pessoa)
SUB-CONSULTAS
Outro exemplo de select com subconsulta:
Problema: Qual são os nomes e salários do
indivíduo mais bem remunerado da empresa?
Select nome, salário
From pessoa
Where salário = (select Max(salário) from pessoa)
SUB-CONSULTAS
Obs: Teoricamente, não existe qualquer limite
para o número de comandos Select que podem
ser encadeados. No entando, não é comum
encontrar mais que dois ou três.
Subconsultas correlacionadas
e não-correlacionadas
Quando um select contém outro select
encadeado, pode acontecer que o select interior
necessite de valores do select exterior.
• Problema: Qual é o nome das pessoas cujo
salário é menor que 15 vezes o conjunto das
suas comissões?
Subconsultas correlacionadas
e não-correlacionadas
Select nome, salário
From pessoa p
Where salário < (select sum(valor)
From comissão c
Where c.id = p.id) * 15
Subconsultas correlacionadas
e não-correlacionadas
• Observe que, neste caso, o select interior tem
que considerer apenas o conjunto das
comissoes que pertencem a cada uma das
pessoas que está sendo analisada
individualmente pelo select exterior, sendo por
isso necessário fazer a ligação entre os dois
comandos select
Subconsultas correlacionadas
e não-correlacionadas
• Obs: A subconsulta (colocada entre parênteses)
que depende, para o seu funcionamento, de
valores da consulta mais exterior é chamada de
consulta correlacionada. Se a subconsulta
interior não depender de valores da consulta
exterior, diz-se que é uma subconsulta não-
correlacionada.
Consultas – Como funcionam
• A forma como os sistemas executam as
Consultas (queries) depende do tupo de
consulta que está se querendo executar. Estas
podem ser classificadas em correlacionadas ou
não-correlacionadas.
Consultas – Como funcionam
USE AdventureWorks2017
GO
CREATE TABLE PESSOA (
ID INT NOT NULL,
NOME VARCHAR(25),
SALARIO MONEY,
CONSTRAINT PK_PESSOA Primary key(ID)
)
GO
INSERT INTO PESSOA VALUES (1,'ANA',10000),
(2,'PEDRO',10000),
(3,'MARIA',15000),
(4,'PAULA',15000),
(5,'FERNAMDA',20000)
GO
Consultas – Como funcionam
--verificando dados da tabela de pessoas
SELECT * FROM PESSOA
GO
CREATE TABLE COMISSAO
(
ID INT NOT NULL,
PESSOA_ID INT NOT NULL,
DATA DATE,
VALOR MONEY,
CONSTRAINT PK_COMISSAO PRIMARY KEY(ID),
CONSTRAINT FK_PESSOA_ID FOREIGN KEY(PESSOA_ID)
REFERENCES PESSOA(ID)
)
GO
Consultas – Como funcionam
INSERT INTO COMISSAO VALUES (1,1,'01/05/2012',1000),
(2,1,'02/05/2012',1000),
(3,1,'03/05/2012',1000),
(4,2,'01/05/2012',5000),
(5,3,'01/05/2012',300),
(6,3,'02/05/2012',200),
(7,4,'01/05/2012',500),
(8,4,'02/05/2012',300),
(9,5,'01/05/2012',1500)
GO
--verificando dados da tabela de comissao
SELECT * FROM COMISSAO
GO
Consultas – Como funcionam
--PARA COMPARACAO DOS RESULTADOS
SELECT PESSOA_ID, NOME, SALARIO, SUM(VALOR) AS TOTAL_COMISSAO
FROM COMISSAO C
INNER JOIN PESSOA P
ON P.ID = C.PESSOA_ID
GROUP BY PESSOA_ID, NOME, SALARIO
--CORRELACIONADA
SELECT P.NOME, P.SALARIO
FROM PESSOA As P
WHERE SALARIO > (SELECT SUM(C.VALOR)
FROM COMISSAO As C
WHERE C.PESSOA_ID = P.ID) * 10
GO
Consultas não-correlacionadas
Em um consulta não correlacionada o select interior não depende do
select exterior.
Voltemos ao exemplo:
Select nome
From pessoa
Where salário = (select min(salário)
from pessoa)
(o sentido de execução da consulta é de dentro para fora)
Nesse caso, como o select interior não depende do select exterior, é executado em primeiro
lugar e apenas uma única vez.
Assim, o select exterior depende do resultado devolvido pelo select interior e são os valores
devolvidos pelo select interior que vão permitir a resolução do select exterior.
Consultas correlacionadas
Neste caso, como o select interior depende do select exterior, o select exterior fornece os
valores necessários ao select interior, reduzindo o conjunto de registros considerados no
select interior.
O sentido da consulta da consulta é de fora para dentro, pois compete ao select exterior
enviar o salário a fim de ser comparado com o total das comissões associadas ao id a que
pertence o salário.
Em uma consulta correlacionada o select interior depende
efetivamente dos dados que lhe são fornecidos pelo select exterior.
Observemos o exemplo considerado anteriormente:
Select nome, salário
From pessoa p
Where salário < (select sum(valor)
From comissão c
Where c.id = p.id) * 15
Consultas correlacionadas
Neste caso, para cada pessoa considerada no select exterior, é
executado o select interior calculando o total de comissões que lhe
estão associadas.
Obs: O nome de um campo está sempre associado ao select a que
pertence.
De acordo com a nota anterior, embora o campo id pertença a
ambas as tabelas (pessoa e comissão), como o campo id é apenas
referido no select interior todas as referencias que são encontradas
referem-se à tabela comissão.
Consultas correlacionadas
O programador deverá prestar atenção, pois se utilizar os operadores
lógicos e/ou relacionais o resultado do select interior deverá
devolver apenas uma única linha de tal forma que a comparação
possa ser realizada.
Obs: A utilização de operadores lógicos e relacionais na comparação
com o resultado de uma subconsulta obriga a que esta ultima
devolva apenas uma única linha de resultado. Caso contrário obtém-
se um erro.
O seguinte comando provocará um erro, pois o select interno
devolve mais do que uma linha de resultado, não sendo possível
realizar a comparação.
Consultas correlacionadas vs. consultas não-
correlacionadas
Consulta não-
correlacionada
Consulta
correlacionada
Sentido da execução Do interior para o
exterior
Do exterior para o
interior
Dependência da
consulta interior
Não depende da
consulta exterior
Depende da consulta
exterior
Execução da consulta
interior
Uma única vez Tantas vezes quantas
as executadas pela
consulta exterior

Mais conteúdo relacionado

Semelhante a BD I - Aula 14 A - Limitando Conj Dados e Sub Selects

06 Trabalhando com registros
06 Trabalhando com registros06 Trabalhando com registros
06 Trabalhando com registros
Centro Paula Souza
 
Sql junções
Sql junçõesSql junções
Sql junções
Reuel Lopes
 
Treinamento de SQL Básico
Treinamento de SQL BásicoTreinamento de SQL Básico
Treinamento de SQL Básico
Igor Alves
 
Aula 7 sql - select
Aula 7   sql - selectAula 7   sql - select
Aula 7 sql - select
Hélio Martins
 
Aula7 sql basico_6por_pag
Aula7 sql basico_6por_pagAula7 sql basico_6por_pag
Aula7 sql basico_6por_pag
anacri
 
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
Arley Rodrigues
 
Fundamentos de SQL - Parte 1 de 8
Fundamentos de SQL - Parte 1 de 8Fundamentos de SQL - Parte 1 de 8
Fundamentos de SQL - Parte 1 de 8
Emiliano Barbosa
 
Refactoring Databases - Estrategias
Refactoring Databases - EstrategiasRefactoring Databases - Estrategias
Refactoring Databases - Estrategias
Ismael
 
LabMM4 (T08 - 12/13) - SQL continuação
LabMM4 (T08 - 12/13) - SQL continuaçãoLabMM4 (T08 - 12/13) - SQL continuação
LabMM4 (T08 - 12/13) - SQL continuação
Carlos Santos
 
3º Fast Show - SQL Analytics
3º Fast Show - SQL Analytics3º Fast Show - SQL Analytics
3º Fast Show - SQL Analytics
qualidatavix
 
Aula 12 banco de dados
Aula 12   banco de dadosAula 12   banco de dados
Aula 12 banco de dados
Jorge Ávila Miranda
 
Formulas excel
Formulas excelFormulas excel
Formulas excel
dedpadilha
 
Aula06 - SQL (Conjuntos e Juncoes).pptx
Aula06 - SQL (Conjuntos e Juncoes).pptxAula06 - SQL (Conjuntos e Juncoes).pptx
Aula06 - SQL (Conjuntos e Juncoes).pptx
ishtar14
 
Aula06 - SQL (Conjuntos e Juncoes).pptx
Aula06 - SQL (Conjuntos e Juncoes).pptxAula06 - SQL (Conjuntos e Juncoes).pptx
Aula06 - SQL (Conjuntos e Juncoes).pptx
suellencarolinerosa
 
Apostila excel avançado
Apostila excel avançadoApostila excel avançado
Apostila excel avançado
Edusafig
 
Revisao_SQL_Parte_I.ppt
Revisao_SQL_Parte_I.pptRevisao_SQL_Parte_I.ppt
Revisao_SQL_Parte_I.ppt
a08008
 
Conceitos Basicos em Banco de Dados
Conceitos Basicos em Banco de DadosConceitos Basicos em Banco de Dados
Conceitos Basicos em Banco de Dados
Alefe Variani
 
Formulas excel
Formulas excelFormulas excel
Formulas excel
Luis Dalmoneki
 
Formulas excel
Formulas excelFormulas excel
Formulas excel
faby672
 
Formulas excel
Formulas excelFormulas excel
Formulas excel
Andre Robson Oliveira
 

Semelhante a BD I - Aula 14 A - Limitando Conj Dados e Sub Selects (20)

06 Trabalhando com registros
06 Trabalhando com registros06 Trabalhando com registros
06 Trabalhando com registros
 
Sql junções
Sql junçõesSql junções
Sql junções
 
Treinamento de SQL Básico
Treinamento de SQL BásicoTreinamento de SQL Básico
Treinamento de SQL Básico
 
Aula 7 sql - select
Aula 7   sql - selectAula 7   sql - select
Aula 7 sql - select
 
Aula7 sql basico_6por_pag
Aula7 sql basico_6por_pagAula7 sql basico_6por_pag
Aula7 sql basico_6por_pag
 
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
 
Fundamentos de SQL - Parte 1 de 8
Fundamentos de SQL - Parte 1 de 8Fundamentos de SQL - Parte 1 de 8
Fundamentos de SQL - Parte 1 de 8
 
Refactoring Databases - Estrategias
Refactoring Databases - EstrategiasRefactoring Databases - Estrategias
Refactoring Databases - Estrategias
 
LabMM4 (T08 - 12/13) - SQL continuação
LabMM4 (T08 - 12/13) - SQL continuaçãoLabMM4 (T08 - 12/13) - SQL continuação
LabMM4 (T08 - 12/13) - SQL continuação
 
3º Fast Show - SQL Analytics
3º Fast Show - SQL Analytics3º Fast Show - SQL Analytics
3º Fast Show - SQL Analytics
 
Aula 12 banco de dados
Aula 12   banco de dadosAula 12   banco de dados
Aula 12 banco de dados
 
Formulas excel
Formulas excelFormulas excel
Formulas excel
 
Aula06 - SQL (Conjuntos e Juncoes).pptx
Aula06 - SQL (Conjuntos e Juncoes).pptxAula06 - SQL (Conjuntos e Juncoes).pptx
Aula06 - SQL (Conjuntos e Juncoes).pptx
 
Aula06 - SQL (Conjuntos e Juncoes).pptx
Aula06 - SQL (Conjuntos e Juncoes).pptxAula06 - SQL (Conjuntos e Juncoes).pptx
Aula06 - SQL (Conjuntos e Juncoes).pptx
 
Apostila excel avançado
Apostila excel avançadoApostila excel avançado
Apostila excel avançado
 
Revisao_SQL_Parte_I.ppt
Revisao_SQL_Parte_I.pptRevisao_SQL_Parte_I.ppt
Revisao_SQL_Parte_I.ppt
 
Conceitos Basicos em Banco de Dados
Conceitos Basicos em Banco de DadosConceitos Basicos em Banco de Dados
Conceitos Basicos em Banco de Dados
 
Formulas excel
Formulas excelFormulas excel
Formulas excel
 
Formulas excel
Formulas excelFormulas excel
Formulas excel
 
Formulas excel
Formulas excelFormulas excel
Formulas excel
 

Mais de Rodrigo Kiyoshi Saito

Algoritmos - Aula 16 B - Arquivos
Algoritmos - Aula 16 B - ArquivosAlgoritmos - Aula 16 B - Arquivos
Algoritmos - Aula 16 B - Arquivos
Rodrigo Kiyoshi Saito
 
Algoritmos - Aula 16 B - Arquivos - Exercicios
Algoritmos - Aula 16 B - Arquivos - ExerciciosAlgoritmos - Aula 16 B - Arquivos - Exercicios
Algoritmos - Aula 16 B - Arquivos - Exercicios
Rodrigo Kiyoshi Saito
 
Algoritmos - Aula 16 - Registros - Exercicio Enunciado
Algoritmos - Aula 16 - Registros - Exercicio EnunciadoAlgoritmos - Aula 16 - Registros - Exercicio Enunciado
Algoritmos - Aula 16 - Registros - Exercicio Enunciado
Rodrigo Kiyoshi Saito
 
Algoritmos - Aula 16 - Registros
Algoritmos - Aula 16 - RegistrosAlgoritmos - Aula 16 - Registros
Algoritmos - Aula 16 - Registros
Rodrigo Kiyoshi Saito
 
BD I - Aula 15 C - Manutencao de tabelas
BD I - Aula 15 C - Manutencao de tabelasBD I - Aula 15 C - Manutencao de tabelas
BD I - Aula 15 C - Manutencao de tabelas
Rodrigo Kiyoshi Saito
 
BD I - Aula 15 B - Criacao de tabelas
BD I - Aula 15 B - Criacao de tabelasBD I - Aula 15 B - Criacao de tabelas
BD I - Aula 15 B - Criacao de tabelas
Rodrigo Kiyoshi Saito
 
BD I - Aula 15 A - Comandos DML
BD I - Aula 15 A - Comandos DMLBD I - Aula 15 A - Comandos DML
BD I - Aula 15 A - Comandos DML
Rodrigo Kiyoshi Saito
 
BD I - Aula 14 B - Exercicios - Enunciado
BD I - Aula 14 B - Exercicios - EnunciadoBD I - Aula 14 B - Exercicios - Enunciado
BD I - Aula 14 B - Exercicios - Enunciado
Rodrigo Kiyoshi Saito
 
Algoritmos - Aula 15 - Modularizacao e Escopo de Variaveis - Exercicios Enunc...
Algoritmos - Aula 15 - Modularizacao e Escopo de Variaveis - Exercicios Enunc...Algoritmos - Aula 15 - Modularizacao e Escopo de Variaveis - Exercicios Enunc...
Algoritmos - Aula 15 - Modularizacao e Escopo de Variaveis - Exercicios Enunc...
Rodrigo Kiyoshi Saito
 
Algoritmos - Aula 15 - Modularizacao e Escopo de Variaveis
Algoritmos - Aula 15 - Modularizacao e Escopo de VariaveisAlgoritmos - Aula 15 - Modularizacao e Escopo de Variaveis
Algoritmos - Aula 15 - Modularizacao e Escopo de Variaveis
Rodrigo Kiyoshi Saito
 
BD I - Aula 13 B - Agrupando Dados - Parte 04 - Exercicios Enunciado
BD I - Aula 13 B - Agrupando Dados  - Parte 04 - Exercicios EnunciadoBD I - Aula 13 B - Agrupando Dados  - Parte 04 - Exercicios Enunciado
BD I - Aula 13 B - Agrupando Dados - Parte 04 - Exercicios Enunciado
Rodrigo Kiyoshi Saito
 
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
Rodrigo Kiyoshi Saito
 
BD I - Aula 13 B - Agrupando dados - Parte 04 - Exercicios Enunciado
BD I - Aula 13 B - Agrupando dados  - Parte 04 - Exercicios EnunciadoBD I - Aula 13 B - Agrupando dados  - Parte 04 - Exercicios Enunciado
BD I - Aula 13 B - Agrupando dados - Parte 04 - Exercicios Enunciado
Rodrigo Kiyoshi Saito
 
BD I - Aula 13 A - Funcoes de string datas numeros e conversao - parte 03
BD I - Aula 13 A - Funcoes de string datas numeros e conversao - parte 03BD I - Aula 13 A - Funcoes de string datas numeros e conversao - parte 03
BD I - Aula 13 A - Funcoes de string datas numeros e conversao - parte 03
Rodrigo Kiyoshi Saito
 
Algoritmos - Aula 13 C - Matrizes em C
Algoritmos - Aula 13 C - Matrizes em CAlgoritmos - Aula 13 C - Matrizes em C
Algoritmos - Aula 13 C - Matrizes em C
Rodrigo Kiyoshi Saito
 
Algoritmos - Aula 13 B - Vetores em C
Algoritmos - Aula 13 B - Vetores em CAlgoritmos - Aula 13 B - Vetores em C
Algoritmos - Aula 13 B - Vetores em C
Rodrigo Kiyoshi Saito
 
Algoritmos - Aula 13 A - Lacos em C
Algoritmos - Aula 13 A - Lacos em CAlgoritmos - Aula 13 A - Lacos em C
Algoritmos - Aula 13 A - Lacos em C
Rodrigo Kiyoshi Saito
 
Algoritmos - Aula 12 B - Traducao Ling C - Condicoes
Algoritmos - Aula 12 B - Traducao Ling C - CondicoesAlgoritmos - Aula 12 B - Traducao Ling C - Condicoes
Algoritmos - Aula 12 B - Traducao Ling C - Condicoes
Rodrigo Kiyoshi Saito
 
Algoritmos - Aula 12 A - Traducao ling C - Ent Proc Saida
Algoritmos - Aula 12 A - Traducao ling C - Ent Proc SaidaAlgoritmos - Aula 12 A - Traducao ling C - Ent Proc Saida
Algoritmos - Aula 12 A - Traducao ling C - Ent Proc Saida
Rodrigo Kiyoshi Saito
 
BD I - Aula 10 A - Introducao a SQL
BD I - Aula 10 A - Introducao a SQLBD I - Aula 10 A - Introducao a SQL
BD I - Aula 10 A - Introducao a SQL
Rodrigo Kiyoshi Saito
 

Mais de Rodrigo Kiyoshi Saito (20)

Algoritmos - Aula 16 B - Arquivos
Algoritmos - Aula 16 B - ArquivosAlgoritmos - Aula 16 B - Arquivos
Algoritmos - Aula 16 B - Arquivos
 
Algoritmos - Aula 16 B - Arquivos - Exercicios
Algoritmos - Aula 16 B - Arquivos - ExerciciosAlgoritmos - Aula 16 B - Arquivos - Exercicios
Algoritmos - Aula 16 B - Arquivos - Exercicios
 
Algoritmos - Aula 16 - Registros - Exercicio Enunciado
Algoritmos - Aula 16 - Registros - Exercicio EnunciadoAlgoritmos - Aula 16 - Registros - Exercicio Enunciado
Algoritmos - Aula 16 - Registros - Exercicio Enunciado
 
Algoritmos - Aula 16 - Registros
Algoritmos - Aula 16 - RegistrosAlgoritmos - Aula 16 - Registros
Algoritmos - Aula 16 - Registros
 
BD I - Aula 15 C - Manutencao de tabelas
BD I - Aula 15 C - Manutencao de tabelasBD I - Aula 15 C - Manutencao de tabelas
BD I - Aula 15 C - Manutencao de tabelas
 
BD I - Aula 15 B - Criacao de tabelas
BD I - Aula 15 B - Criacao de tabelasBD I - Aula 15 B - Criacao de tabelas
BD I - Aula 15 B - Criacao de tabelas
 
BD I - Aula 15 A - Comandos DML
BD I - Aula 15 A - Comandos DMLBD I - Aula 15 A - Comandos DML
BD I - Aula 15 A - Comandos DML
 
BD I - Aula 14 B - Exercicios - Enunciado
BD I - Aula 14 B - Exercicios - EnunciadoBD I - Aula 14 B - Exercicios - Enunciado
BD I - Aula 14 B - Exercicios - Enunciado
 
Algoritmos - Aula 15 - Modularizacao e Escopo de Variaveis - Exercicios Enunc...
Algoritmos - Aula 15 - Modularizacao e Escopo de Variaveis - Exercicios Enunc...Algoritmos - Aula 15 - Modularizacao e Escopo de Variaveis - Exercicios Enunc...
Algoritmos - Aula 15 - Modularizacao e Escopo de Variaveis - Exercicios Enunc...
 
Algoritmos - Aula 15 - Modularizacao e Escopo de Variaveis
Algoritmos - Aula 15 - Modularizacao e Escopo de VariaveisAlgoritmos - Aula 15 - Modularizacao e Escopo de Variaveis
Algoritmos - Aula 15 - Modularizacao e Escopo de Variaveis
 
BD I - Aula 13 B - Agrupando Dados - Parte 04 - Exercicios Enunciado
BD I - Aula 13 B - Agrupando Dados  - Parte 04 - Exercicios EnunciadoBD I - Aula 13 B - Agrupando Dados  - Parte 04 - Exercicios Enunciado
BD I - Aula 13 B - Agrupando Dados - Parte 04 - Exercicios Enunciado
 
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
 
BD I - Aula 13 B - Agrupando dados - Parte 04 - Exercicios Enunciado
BD I - Aula 13 B - Agrupando dados  - Parte 04 - Exercicios EnunciadoBD I - Aula 13 B - Agrupando dados  - Parte 04 - Exercicios Enunciado
BD I - Aula 13 B - Agrupando dados - Parte 04 - Exercicios Enunciado
 
BD I - Aula 13 A - Funcoes de string datas numeros e conversao - parte 03
BD I - Aula 13 A - Funcoes de string datas numeros e conversao - parte 03BD I - Aula 13 A - Funcoes de string datas numeros e conversao - parte 03
BD I - Aula 13 A - Funcoes de string datas numeros e conversao - parte 03
 
Algoritmos - Aula 13 C - Matrizes em C
Algoritmos - Aula 13 C - Matrizes em CAlgoritmos - Aula 13 C - Matrizes em C
Algoritmos - Aula 13 C - Matrizes em C
 
Algoritmos - Aula 13 B - Vetores em C
Algoritmos - Aula 13 B - Vetores em CAlgoritmos - Aula 13 B - Vetores em C
Algoritmos - Aula 13 B - Vetores em C
 
Algoritmos - Aula 13 A - Lacos em C
Algoritmos - Aula 13 A - Lacos em CAlgoritmos - Aula 13 A - Lacos em C
Algoritmos - Aula 13 A - Lacos em C
 
Algoritmos - Aula 12 B - Traducao Ling C - Condicoes
Algoritmos - Aula 12 B - Traducao Ling C - CondicoesAlgoritmos - Aula 12 B - Traducao Ling C - Condicoes
Algoritmos - Aula 12 B - Traducao Ling C - Condicoes
 
Algoritmos - Aula 12 A - Traducao ling C - Ent Proc Saida
Algoritmos - Aula 12 A - Traducao ling C - Ent Proc SaidaAlgoritmos - Aula 12 A - Traducao ling C - Ent Proc Saida
Algoritmos - Aula 12 A - Traducao ling C - Ent Proc Saida
 
BD I - Aula 10 A - Introducao a SQL
BD I - Aula 10 A - Introducao a SQLBD I - Aula 10 A - Introducao a SQL
BD I - Aula 10 A - Introducao a SQL
 

Último

AULA-001---AS-CELULAS_5546dad041b949bbb7b1f0fa841a6d1f.pdf
AULA-001---AS-CELULAS_5546dad041b949bbb7b1f0fa841a6d1f.pdfAULA-001---AS-CELULAS_5546dad041b949bbb7b1f0fa841a6d1f.pdf
AULA-001---AS-CELULAS_5546dad041b949bbb7b1f0fa841a6d1f.pdf
SthafaniHussin1
 
PP Slides Lição 11, Betel, Ordenança para exercer a fé, 2Tr24.pptx
PP Slides Lição 11, Betel, Ordenança para exercer a fé, 2Tr24.pptxPP Slides Lição 11, Betel, Ordenança para exercer a fé, 2Tr24.pptx
PP Slides Lição 11, Betel, Ordenança para exercer a fé, 2Tr24.pptx
LuizHenriquedeAlmeid6
 
Educação trabalho HQ em sala de aula uma excelente ideia
Educação  trabalho HQ em sala de aula uma excelente  ideiaEducação  trabalho HQ em sala de aula uma excelente  ideia
Educação trabalho HQ em sala de aula uma excelente ideia
joseanesouza36
 
OS elementos de uma boa Redação para o ENEM.pdf
OS elementos de uma boa Redação para o ENEM.pdfOS elementos de uma boa Redação para o ENEM.pdf
OS elementos de uma boa Redação para o ENEM.pdf
AmiltonAparecido1
 
A SOCIOLOGIA E O TRABALHO: ANÁLISES E VIVÊNCIAS
A SOCIOLOGIA E O TRABALHO: ANÁLISES E VIVÊNCIASA SOCIOLOGIA E O TRABALHO: ANÁLISES E VIVÊNCIAS
A SOCIOLOGIA E O TRABALHO: ANÁLISES E VIVÊNCIAS
HisrelBlog
 
Introdução à Sociologia: caça-palavras na escola
Introdução à Sociologia: caça-palavras na escolaIntrodução à Sociologia: caça-palavras na escola
Introdução à Sociologia: caça-palavras na escola
Professor Belinaso
 
slides de Didática 2.pdf para apresentar
slides de Didática 2.pdf para apresentarslides de Didática 2.pdf para apresentar
slides de Didática 2.pdf para apresentar
JoeteCarvalho
 
Cartinhas de solidariedade e esperança.pptx
Cartinhas de solidariedade e esperança.pptxCartinhas de solidariedade e esperança.pptx
Cartinhas de solidariedade e esperança.pptx
Zenir Carmen Bez Trombeta
 
A QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdf
A QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdfA QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdf
A QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdf
AurelianoFerreirades2
 
Testes + soluções_Mensagens12 )11111.pdf
Testes + soluções_Mensagens12 )11111.pdfTestes + soluções_Mensagens12 )11111.pdf
Testes + soluções_Mensagens12 )11111.pdf
lveiga112
 
Pintura Romana .pptx
Pintura Romana                     .pptxPintura Romana                     .pptx
Pintura Romana .pptx
TomasSousa7
 
JOGO DA VELHA FESTA JUNINA - ARQUIVO GRATUITO.pdf
JOGO DA VELHA FESTA JUNINA - ARQUIVO GRATUITO.pdfJOGO DA VELHA FESTA JUNINA - ARQUIVO GRATUITO.pdf
JOGO DA VELHA FESTA JUNINA - ARQUIVO GRATUITO.pdf
ClaudiaMainoth
 
TUTORIAL PARA LANÇAMENTOGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG
TUTORIAL PARA LANÇAMENTOGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGTUTORIAL PARA LANÇAMENTOGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG
TUTORIAL PARA LANÇAMENTOGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG
ProfessoraTatianaT
 
A festa junina é uma tradicional festividade popular que acontece durante o m...
A festa junina é uma tradicional festividade popular que acontece durante o m...A festa junina é uma tradicional festividade popular que acontece durante o m...
A festa junina é uma tradicional festividade popular que acontece durante o m...
ANDRÉA FERREIRA
 
APRESENTAÇÃO PARA AULA DE URGÊNCIA E EMERGÊNCIA
APRESENTAÇÃO PARA AULA DE URGÊNCIA E EMERGÊNCIAAPRESENTAÇÃO PARA AULA DE URGÊNCIA E EMERGÊNCIA
APRESENTAÇÃO PARA AULA DE URGÊNCIA E EMERGÊNCIA
karinenobre2033
 
Slide de biologia aula2 2 bimestre no ano de 2024
Slide de biologia aula2  2 bimestre no ano de 2024Slide de biologia aula2  2 bimestre no ano de 2024
Slide de biologia aula2 2 bimestre no ano de 2024
vinibolado86
 
Aula 2 - Revisando o significado de fração - Parte 2.pptx
Aula 2 - Revisando o significado de fração - Parte 2.pptxAula 2 - Revisando o significado de fração - Parte 2.pptx
Aula 2 - Revisando o significado de fração - Parte 2.pptx
LILIANPRESTESSCUDELE
 
As sequências didáticas: práticas educativas
As sequências didáticas: práticas educativasAs sequências didáticas: práticas educativas
As sequências didáticas: práticas educativas
rloureiro1
 
Telepsiquismo Utilize seu poder extrassensorial para atrair prosperidade (Jos...
Telepsiquismo Utilize seu poder extrassensorial para atrair prosperidade (Jos...Telepsiquismo Utilize seu poder extrassensorial para atrair prosperidade (Jos...
Telepsiquismo Utilize seu poder extrassensorial para atrair prosperidade (Jos...
fran0410
 
Atividade letra da música - Espalhe Amor, Anavitória.
Atividade letra da música - Espalhe  Amor, Anavitória.Atividade letra da música - Espalhe  Amor, Anavitória.
Atividade letra da música - Espalhe Amor, Anavitória.
Mary Alvarenga
 

Último (20)

AULA-001---AS-CELULAS_5546dad041b949bbb7b1f0fa841a6d1f.pdf
AULA-001---AS-CELULAS_5546dad041b949bbb7b1f0fa841a6d1f.pdfAULA-001---AS-CELULAS_5546dad041b949bbb7b1f0fa841a6d1f.pdf
AULA-001---AS-CELULAS_5546dad041b949bbb7b1f0fa841a6d1f.pdf
 
PP Slides Lição 11, Betel, Ordenança para exercer a fé, 2Tr24.pptx
PP Slides Lição 11, Betel, Ordenança para exercer a fé, 2Tr24.pptxPP Slides Lição 11, Betel, Ordenança para exercer a fé, 2Tr24.pptx
PP Slides Lição 11, Betel, Ordenança para exercer a fé, 2Tr24.pptx
 
Educação trabalho HQ em sala de aula uma excelente ideia
Educação  trabalho HQ em sala de aula uma excelente  ideiaEducação  trabalho HQ em sala de aula uma excelente  ideia
Educação trabalho HQ em sala de aula uma excelente ideia
 
OS elementos de uma boa Redação para o ENEM.pdf
OS elementos de uma boa Redação para o ENEM.pdfOS elementos de uma boa Redação para o ENEM.pdf
OS elementos de uma boa Redação para o ENEM.pdf
 
A SOCIOLOGIA E O TRABALHO: ANÁLISES E VIVÊNCIAS
A SOCIOLOGIA E O TRABALHO: ANÁLISES E VIVÊNCIASA SOCIOLOGIA E O TRABALHO: ANÁLISES E VIVÊNCIAS
A SOCIOLOGIA E O TRABALHO: ANÁLISES E VIVÊNCIAS
 
Introdução à Sociologia: caça-palavras na escola
Introdução à Sociologia: caça-palavras na escolaIntrodução à Sociologia: caça-palavras na escola
Introdução à Sociologia: caça-palavras na escola
 
slides de Didática 2.pdf para apresentar
slides de Didática 2.pdf para apresentarslides de Didática 2.pdf para apresentar
slides de Didática 2.pdf para apresentar
 
Cartinhas de solidariedade e esperança.pptx
Cartinhas de solidariedade e esperança.pptxCartinhas de solidariedade e esperança.pptx
Cartinhas de solidariedade e esperança.pptx
 
A QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdf
A QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdfA QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdf
A QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdf
 
Testes + soluções_Mensagens12 )11111.pdf
Testes + soluções_Mensagens12 )11111.pdfTestes + soluções_Mensagens12 )11111.pdf
Testes + soluções_Mensagens12 )11111.pdf
 
Pintura Romana .pptx
Pintura Romana                     .pptxPintura Romana                     .pptx
Pintura Romana .pptx
 
JOGO DA VELHA FESTA JUNINA - ARQUIVO GRATUITO.pdf
JOGO DA VELHA FESTA JUNINA - ARQUIVO GRATUITO.pdfJOGO DA VELHA FESTA JUNINA - ARQUIVO GRATUITO.pdf
JOGO DA VELHA FESTA JUNINA - ARQUIVO GRATUITO.pdf
 
TUTORIAL PARA LANÇAMENTOGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG
TUTORIAL PARA LANÇAMENTOGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGTUTORIAL PARA LANÇAMENTOGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG
TUTORIAL PARA LANÇAMENTOGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG
 
A festa junina é uma tradicional festividade popular que acontece durante o m...
A festa junina é uma tradicional festividade popular que acontece durante o m...A festa junina é uma tradicional festividade popular que acontece durante o m...
A festa junina é uma tradicional festividade popular que acontece durante o m...
 
APRESENTAÇÃO PARA AULA DE URGÊNCIA E EMERGÊNCIA
APRESENTAÇÃO PARA AULA DE URGÊNCIA E EMERGÊNCIAAPRESENTAÇÃO PARA AULA DE URGÊNCIA E EMERGÊNCIA
APRESENTAÇÃO PARA AULA DE URGÊNCIA E EMERGÊNCIA
 
Slide de biologia aula2 2 bimestre no ano de 2024
Slide de biologia aula2  2 bimestre no ano de 2024Slide de biologia aula2  2 bimestre no ano de 2024
Slide de biologia aula2 2 bimestre no ano de 2024
 
Aula 2 - Revisando o significado de fração - Parte 2.pptx
Aula 2 - Revisando o significado de fração - Parte 2.pptxAula 2 - Revisando o significado de fração - Parte 2.pptx
Aula 2 - Revisando o significado de fração - Parte 2.pptx
 
As sequências didáticas: práticas educativas
As sequências didáticas: práticas educativasAs sequências didáticas: práticas educativas
As sequências didáticas: práticas educativas
 
Telepsiquismo Utilize seu poder extrassensorial para atrair prosperidade (Jos...
Telepsiquismo Utilize seu poder extrassensorial para atrair prosperidade (Jos...Telepsiquismo Utilize seu poder extrassensorial para atrair prosperidade (Jos...
Telepsiquismo Utilize seu poder extrassensorial para atrair prosperidade (Jos...
 
Atividade letra da música - Espalhe Amor, Anavitória.
Atividade letra da música - Espalhe  Amor, Anavitória.Atividade letra da música - Espalhe  Amor, Anavitória.
Atividade letra da música - Espalhe Amor, Anavitória.
 

BD I - Aula 14 A - Limitando Conj Dados e Sub Selects

  • 1. Rodrigo Kiyoshi Saito / rodrigok@anchieta.br BANCO DE DADOS I
  • 3. Limitando o conjunto de resultados usando operadores TOP e TABLESAMPLE • TOP e TABLESAMPLE limita o número de linhas retornados em um conjunto de resultados; • Se uma instrução SELECT que inclui TOP e tem uma cláusula ORDER BY, as linhas a serem retornadas são selecionadas a partir do conjunto de resultados ordenados. • TABLESAMPLE não pode ser aplicado a tabelas derivadas, tabelas de linked-servers (servidores vinculados) , tabelas derivadas de funções retorno de valores, funções de retorno de linhas ou OPENXML;
  • 4. Limitando o conjunto de resultados usando operadores TOP e TABLESAMPLE • TABLESAMPLE pode ser usado rapidamente no retorno de uma amostra de uma tabela grande quando qualquer uma das seguintes condições for verdadeira; • A amostra não precisa ser uma amostra real aleatória no nível de linhas individuais; • As linhas em páginas individuais da tabela não estão correlacionados com outras linhas na mesma página;
  • 5. Limitando o conjunto de resultados usando operadores TOP e TABLESAMPLE USE ADVENTUREWORKS2017 GO SELECT TOP (5) BusinessEntityID, FirstName, LastName FROMPerson.Person GO SELECT FirstName, LastName FROM Person.Person TABLESAMPLE (1 PERCENT) GO
  • 6. SUB-CONSULTAS • Uma das características do comando Select, que por vezes passa despercebida, reside no fato de qualquer comando Select não devolver dados, linhas ou colunas, mas devolver sempre uma tabela como resultado de sua execução. • O resultado de uma Select é sempre uma tabela, ainda que da sua execução não resulte qualquer linha como resultado.
  • 7. SUB-CONSULTAS • Isto é particularmente perceptível no fato de sempre serem atribuídos nomes às colunas resultantes de um Select, mesmo que estas sejam constituídas por expressões ou constantes. • Portanto, sendo o resultado de qualquer comando Select uma tabela, podemos então utilizar os resultados devolvidos nessa tabela e incorporá-los em outro comando Select que necessite deles.
  • 8. SUB-CONSULTAS • Uma subconsulta (subquery) consiste em uma Select dentro de outro. Um comando Select pode ser colocado: • Dentro de um outro Select nas cláusulas Where, Having, Select e From; • Dentro de uma outra subconsulta nas mesmas cláusulas do item anterior; • Nos comandos INSERT, UPDATE e DELETE. • Na definição de uma View;
  • 9. SUB-CONSULTAS • É esta capacidade que o SQL tem de integrar comandos SELECT de forma encadeada que fez com que fosse batizado com o nome de Structured Query Language (Linguagem Estruturada de Consultas)
  • 10. SUB-CONSULTAS Vejamos como se implementa e utiliza subconsultas: • Analisemos o seguinte problema: • Problema: Qual é o nome da pessoa com o menor salário na empresa? • Resolução: Aqui temos dois problemas para resolver: – Qual é o valor do menor salário? – Qual é o nome da pessoa a que esse salário corresponde?
  • 11. SUB-CONSULTAS SELECT Min(salário) as menor FROM pessoa (SUPOSTA RESPOSTA DE 7400) SELECT nome From pessoa WHERE SALARIO = 7400 • Até agora, tínhamos que fazer 2 select´s para resolver esse problema. Agora passamos a utilizar subselects, como o exemplo mostra:
  • 12. SUB-CONSULTAS Select nome From pessoa Where salário = (select min(salário) from pessoa)
  • 13. SUB-CONSULTAS Outro exemplo de select com subconsulta: Problema: Qual são os nomes e salários do indivíduo mais bem remunerado da empresa? Select nome, salário From pessoa Where salário = (select Max(salário) from pessoa)
  • 14. SUB-CONSULTAS Obs: Teoricamente, não existe qualquer limite para o número de comandos Select que podem ser encadeados. No entando, não é comum encontrar mais que dois ou três.
  • 15. Subconsultas correlacionadas e não-correlacionadas Quando um select contém outro select encadeado, pode acontecer que o select interior necessite de valores do select exterior. • Problema: Qual é o nome das pessoas cujo salário é menor que 15 vezes o conjunto das suas comissões?
  • 16. Subconsultas correlacionadas e não-correlacionadas Select nome, salário From pessoa p Where salário < (select sum(valor) From comissão c Where c.id = p.id) * 15
  • 17. Subconsultas correlacionadas e não-correlacionadas • Observe que, neste caso, o select interior tem que considerer apenas o conjunto das comissoes que pertencem a cada uma das pessoas que está sendo analisada individualmente pelo select exterior, sendo por isso necessário fazer a ligação entre os dois comandos select
  • 18. Subconsultas correlacionadas e não-correlacionadas • Obs: A subconsulta (colocada entre parênteses) que depende, para o seu funcionamento, de valores da consulta mais exterior é chamada de consulta correlacionada. Se a subconsulta interior não depender de valores da consulta exterior, diz-se que é uma subconsulta não- correlacionada.
  • 19. Consultas – Como funcionam • A forma como os sistemas executam as Consultas (queries) depende do tupo de consulta que está se querendo executar. Estas podem ser classificadas em correlacionadas ou não-correlacionadas.
  • 20. Consultas – Como funcionam USE AdventureWorks2017 GO CREATE TABLE PESSOA ( ID INT NOT NULL, NOME VARCHAR(25), SALARIO MONEY, CONSTRAINT PK_PESSOA Primary key(ID) ) GO INSERT INTO PESSOA VALUES (1,'ANA',10000), (2,'PEDRO',10000), (3,'MARIA',15000), (4,'PAULA',15000), (5,'FERNAMDA',20000) GO
  • 21. Consultas – Como funcionam --verificando dados da tabela de pessoas SELECT * FROM PESSOA GO CREATE TABLE COMISSAO ( ID INT NOT NULL, PESSOA_ID INT NOT NULL, DATA DATE, VALOR MONEY, CONSTRAINT PK_COMISSAO PRIMARY KEY(ID), CONSTRAINT FK_PESSOA_ID FOREIGN KEY(PESSOA_ID) REFERENCES PESSOA(ID) ) GO
  • 22. Consultas – Como funcionam INSERT INTO COMISSAO VALUES (1,1,'01/05/2012',1000), (2,1,'02/05/2012',1000), (3,1,'03/05/2012',1000), (4,2,'01/05/2012',5000), (5,3,'01/05/2012',300), (6,3,'02/05/2012',200), (7,4,'01/05/2012',500), (8,4,'02/05/2012',300), (9,5,'01/05/2012',1500) GO --verificando dados da tabela de comissao SELECT * FROM COMISSAO GO
  • 23. Consultas – Como funcionam --PARA COMPARACAO DOS RESULTADOS SELECT PESSOA_ID, NOME, SALARIO, SUM(VALOR) AS TOTAL_COMISSAO FROM COMISSAO C INNER JOIN PESSOA P ON P.ID = C.PESSOA_ID GROUP BY PESSOA_ID, NOME, SALARIO --CORRELACIONADA SELECT P.NOME, P.SALARIO FROM PESSOA As P WHERE SALARIO > (SELECT SUM(C.VALOR) FROM COMISSAO As C WHERE C.PESSOA_ID = P.ID) * 10 GO
  • 24. Consultas não-correlacionadas Em um consulta não correlacionada o select interior não depende do select exterior. Voltemos ao exemplo: Select nome From pessoa Where salário = (select min(salário) from pessoa) (o sentido de execução da consulta é de dentro para fora) Nesse caso, como o select interior não depende do select exterior, é executado em primeiro lugar e apenas uma única vez. Assim, o select exterior depende do resultado devolvido pelo select interior e são os valores devolvidos pelo select interior que vão permitir a resolução do select exterior.
  • 25. Consultas correlacionadas Neste caso, como o select interior depende do select exterior, o select exterior fornece os valores necessários ao select interior, reduzindo o conjunto de registros considerados no select interior. O sentido da consulta da consulta é de fora para dentro, pois compete ao select exterior enviar o salário a fim de ser comparado com o total das comissões associadas ao id a que pertence o salário. Em uma consulta correlacionada o select interior depende efetivamente dos dados que lhe são fornecidos pelo select exterior. Observemos o exemplo considerado anteriormente: Select nome, salário From pessoa p Where salário < (select sum(valor) From comissão c Where c.id = p.id) * 15
  • 26. Consultas correlacionadas Neste caso, para cada pessoa considerada no select exterior, é executado o select interior calculando o total de comissões que lhe estão associadas. Obs: O nome de um campo está sempre associado ao select a que pertence. De acordo com a nota anterior, embora o campo id pertença a ambas as tabelas (pessoa e comissão), como o campo id é apenas referido no select interior todas as referencias que são encontradas referem-se à tabela comissão.
  • 27. Consultas correlacionadas O programador deverá prestar atenção, pois se utilizar os operadores lógicos e/ou relacionais o resultado do select interior deverá devolver apenas uma única linha de tal forma que a comparação possa ser realizada. Obs: A utilização de operadores lógicos e relacionais na comparação com o resultado de uma subconsulta obriga a que esta ultima devolva apenas uma única linha de resultado. Caso contrário obtém- se um erro. O seguinte comando provocará um erro, pois o select interno devolve mais do que uma linha de resultado, não sendo possível realizar a comparação.
  • 28. Consultas correlacionadas vs. consultas não- correlacionadas Consulta não- correlacionada Consulta correlacionada Sentido da execução Do interior para o exterior Do exterior para o interior Dependência da consulta interior Não depende da consulta exterior Depende da consulta exterior Execução da consulta interior Uma única vez Tantas vezes quantas as executadas pela consulta exterior