Buscar

Aula 5: LINGUAGEM SQL Funções de Grupo

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 12 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 12 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 12 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

1.
Quando Usar o Order By
Quando usar funções de Coluna
Quando usar a Função Where
Quando usar o Order By em conjunto com a função SUM
Sempre apos o comando Where
 
2.
3,45
10
2,35
4,29
6
 
3.
Quando usar o Group By
Considere a relação:
FUNCIONARIO (matrícula, cargo, salario, admissao)
A consulta SQL que mostra média dos salários dos funcionários é:
https://simulado.estacio.br/bdq_simulados_exercicio.asp#
https://simulado.estacio.br/bdq_simulados_exercicio.asp#
https://simulado.estacio.br/bdq_simulados_exercicio.asp#
Nenhuma das respostas acima.
SELECT SALARIO FROM FUNCIONARIO AVG;
SELECT SUM(SALARIO) FROM FUNCIONARIO;
SELECT MEDIA(SALARIO) FROM FUNCIONARIO;
SELECT AVG(SALARIO) FROM FUNCIONARIO;
 
4.
SELECT IDEspecie, AVG(Comprimento), MAX(TempAgua), MIN(TempAgua) FROM ESPÉCIE E, TUBARÃO T, CAPTURA 
C WHERE E.IDEspecie = T.IDEspecie AND T.IDTubarão = C.IDTubarão GROUP BY (Nome_Científico);
SELECT Nome_Científico, SUM(Comprimento), MIN(TempAgua), MAX(TempAgua) FROM ESPÉCIE E, TUBARÃO T, 
CAPTURA C WHERE E.IDEspecie = T.IDEspecie AND T.IDTubarão = C.IDTubarão GROUP BY (Nome_Científico);
SELECT Nome_Científico, AVG(Comprimento), MIN(TempAgua), MAX(TempAgua) FROM ESPÉCIE E, TUBARÃO T, 
CAPTURA C WHERE E.IDEspecie = T.IDEspecie AND T.IDTubarão = C.IDTubarão GROUP BY (Nome_Científico);
SELECT Nome_Científico, SUM(Comprimento), MIN(TempAgua), MAX(TempAgua) FROM ESPÉCIE E, TUBARÃO T, 
CAPTURA C WHERE E.IDEspecie = T.IDEspecie AND T.IDTubarão = C.IDTubarão GROUP BY (Nome);
SELECT Nome, AVG(Comprimento), MIN(TempAgua), MAX(TempAgua) FROM ESPÉCIE E, TUBARÃO T, CAPTURA C 
WHERE E.IDEspecie = T.IDEspecie AND T.IDTubarão = C.IDTubarão GROUP BY (Nome_Científico);
 
5.
O operador AND faz a checagem de valores zerados
O esquema de banco de dados apresentado abaixo faz parte de um banco de
dados criado a partir de um conjunto de dados públicos de captura de
tubarões entre os anos de 2001 e 2013 na costa da Austrália. Os dados
podem ser baixados no endereço: https://data.qld.gov.au/dataset/shark-
control-program-shark-catch-statistics/resource/5c6be990-3938-4125-8cca-
dac0cd734263
Características do esquema: Chave primária sublinhada e chave estrangeira 
em itálico.
Seguem algumas tabelas do Esquema:
Espécie (IDEspécie, IDOrdem. Nome_Científico, TamMaior, TamMenor, 
TamMédio)
Tubarão (IDTubarão, IDEspécie, Comprimento, Sexo)
Captura (NumCaptura, IDTubarão, IDLocal, Data, TempAgua)
Assinale a alternativa abaixo que retorna a média de comprimento dos tubarões e a temperatura 
mínima e máxima da água agrupadas pelo nome científico da Espécie:
Acerca do conjunto de operações para manipulação de dados, marque a alternativa correta:
https://simulado.estacio.br/bdq_simulados_exercicio.asp#
https://simulado.estacio.br/bdq_simulados_exercicio.asp#
O operador ALIAS é usado para renomear definitivamente colunas e tabelas
O operador IN pode ser usado para comparar valores na cláusula FROM
O operador LIKE é usado para operações com booleanos
DESC é obrigatoriamente necessário à cláusula ORDER BY quando se deseja ordenar decrescentemente
 
6.
2
NULL
0
5000
1
 
7.
SELECT nome_turma,count(*) FROM TURMA t INNER JOIN MATRICULA m ON t.nome_turma = m.nome_turma 
WHERE count(*) > 20
SELECT nome_turma,count(*) FROM TURMA t INNER JOIN MATRICULA m ON t.nome_turma = m.nome_turma 
GROUP BY nome_turma WHERE count(*) > 20
SELECT t.nome_turma,count(*) FROM TURMA t INNER JOIN MATRICULA m ON t.nome_turma = m.nome_turma 
HAVING count(*) > 20 GROUP BY t.nome_turma
SELECT t.nome_turma,count(*) FROM TURMA t INNER JOIN MATRICULA m ON t.nome_turma = m.nome_turma 
GROUP BY 1 HAVING count(*) > 20
SELECT * FROM TURMA t,MATRICULA m ON t.nome_turma = m.nome_turma WHERE count(*) > 20
 
8.
AVG
SUM
COUNT
Após a execução dos seguintes comandos em linguagem SQL:
CREATE TABLE Carros (Codigo int PRIMARY KEY,  Modelo varchar(30))
INSERT INTO Carros VALUES (NULL, Alfa Romeo)
INSERT INTO Carros VALUES (5000, Mazda)
SELECT COUNT(*) FROM Carros
Será retornado o valor:
Considerando as tabelas descritas a seguir e a legenda: PK - chave primária / FK - chave 
estrangeira. 1 - ALUNO (matricula,nome,especializacao,nivel,idade), onde matricula é a PK; 2
- TURMA (nome_turma,horario,sala), onde nome_turma é a PK; 3 - MATRICULA 
(numero_aluno,nome_turma,numero_posicao), onde numero_aluno e nome_turma formam a 
PK, numero_aluno é FK referenciando ALUNO e nome_turma é FK referenciando TURMA. 
Marque a opção que contém o código em SQL para exibir o(s) nome(s) da(s) turma(s) que 
tem mais de 20 alunos matriculados:
Quando desejamos selecionar o maior e o menor valor de 
um atributo numérico usamos:
https://simulado.estacio.br/bdq_simulados_exercicio.asp#
https://simulado.estacio.br/bdq_simulados_exercicio.asp#
https://simulado.estacio.br/bdq_simulados_exercicio.asp#
MIN, MAX
MAIOR, MENOR
0
4
3
2
1
 
2.
Seleciona todos os campos da tabela Turma ordenando os registros por DESCRICAO em ordem decrescente
Seleciona todos os campos e os registros da tabela turma
Seleciona os campos ID e DESCRICAO da tabela Turma
Seleciona os campos ID e DESCRICAO da tabela Turma ordenando os registros por DESCRICAO em ordem 
decrescente
Seleciona todos os registros da tabela Turma
 
3.
Qual será o resultado da consulta SQL SELECT COUNT(*) FROM pecas WHERE cor=Vermelho ao ser aplicada na tabela peças?
Para o comando apresentado a seguir, indique a alternativa que apresenta o resultado 
obtido com a sua execução:
SELECT ID, DESCRICAO FROM Turma ORDER BY DESCRICAO desc;
https://simulado.estacio.br/bdq_simulados_exercicio.asp#
https://simulado.estacio.br/bdq_simulados_exercicio.asp#
max(reg)
avg(reg)
count(cidade)
count(*)
sum(reg)
 
4.
HAVING
UNIQUE OUT
ORDER BY
GROUP IN
SHOW
 
5.
Considere a tabela a seguir:
Qual a função a ser utilizada em um script SQL quando se desejar obter o número de cidades 
cadastradas?
 
Em uma instrução SQL, para manipular dados retornados de funções agregadoras, utiliza-se 
a cláusula
https://simulado.estacio.br/bdq_simulados_exercicio.asp#
https://simulado.estacio.br/bdq_simulados_exercicio.asp#
São Paulo, Santos, Santos, Rio de Janeiro, Niterói
Niterói, Rio de Janeiro, Santos
Niterói, Rio de Janeiro, Santos, Santos, São Paulo
São Paulo, Santos, Rio de Janeiro, Niterói
Niterói, Rio de Janeiro, Santos, São Paulo
 
6.
VARP
MIN.
MAX. 
AVG. 
VAR. 
 
7.
Observe a tabela empregado:
Qual será o resultado se executarmos a consulta abaixo:
O gestor de um sistema de vendas solicita o preço médio dos produtos eletrônicos, que não 
está disponível na interface WEB do sistema. Para isso, que função SQL pode ser utilizada 
no SELECT para obter esse valor do banco de dados?
https://simulado.estacio.br/bdq_simulados_exercicio.asp#
https://simulado.estacio.br/bdq_simulados_exercicio.asp#
WHERE / GROUP BY / HAVING
GROUP BY / HAVING / WHERE
HAVING / WHERE / HAVING
WHERE / HAVING / GROUP BY
WHERE / HAVING / WHERE
 
8.
SELECT DISTINCT Nome FROM Empregado GROUP BY Nome
SELECT Nome FROM Empregado ORDER BY Nome
SELECT ORDER BY Nome FROM Empregado WHERE DISTINCT Nome
SELECT Nome FROM Empregado ORDER BY DISTINCT Nome
SELECT DISTINCT Nome FROM Empregado ORDER BY Nome DESC
Em SQL (Structured Query Language), as funções de agregação são muito úteis para obtenção
de informação
resumida sobre um resultado de um comando SELECT e também no tratamento de 
informações de forma agrupada
(geralmente em grupos menores). No agrupamento de informações, resultados de consultas 
SQL, algumas cláusulas
devem ser utilizadas quando se pretende restringir o conjunto de registros a ser utilizado. 
Nesse sentido, analise a
afirmativa a seguir.
Utiliza-se a cláusula ________________ sempre que se pretende restringir os registros a serem 
considerados na
seleção. A cláusula ________________ serve para restringir os grupos que foram formados depois
de aplicada a
restrição da cláusula ________________."
Assinale a alternativa que completa correta e sequencialmente aafirmativa anterior.
Considere a seguinte tabela de Empregados:
Empregado (CodEmpregado, Nome, Salario)
Escolha o comado SQL que liste o nome de todos os empregados sem repetição e 
em ordem decrescente:
https://simulado.estacio.br/bdq_simulados_exercicio.asp#
1
.
Somente I.
I e II.
I, II e III.
I e III.
II e III.
 
2.
https://simulado.estacio.br/bdq_simulados_exercicio.asp#
SELECT NOMEP, NOMEA, TITULO FROM 
PROFESSOR P, ALUNO A, TCC T WHERE P.MATP = 
A.MATP AND A.MATA = T.MATA;
SELECT NOMEA ALUNO, NOMEP PROFESSOR, 
TITULO "TÍTULO" FROM PROFESSOR P, ALUNO A, 
TCC T WHERE P.MATP = A.MATP AND A.MATA = 
T.MATA;
SELECT NOMEP PROFESSOR, NOMEA ALUNO, 
TITULO "TÍTULO" FROM PROFESSOR P, ALUNO A, 
TCC T WHERE P.MATP = A.MATP;
SELECT NOMEP PROFESSOR, NOMEA ALUNO, 
TITULO "TÍTULO" FROM PROFESSOR P, ALUNO A, 
TCC T WHERE P.MATP = A.MATP AND A.MATA = 
T.MATA;
SELECT NOMEA ALUNO, NOMEP PROFESSOR, 
TITULO FROM PROFESSOR P, ALUNO A, TCC T 
WHERE P.MATP = A.MATP AND A.MATA = T.MATA;
 
3.
SELECT MODELO, COUNT(ID) FROM VEICULOS GROUP BY MARCA ORDER BY MODELO desc;
SELECT * FROM VEICULOS ORDER BY MODELO desc;
SELECT * FROM VEICULOS GROUP BY MODELO;
SELECT MODELO, COUNT(ID) FROM VEICULOS GROUP BY MODELO ORDER BY MODELO Asc;
SELECT DESCRICAO, MODELO FROM VEICULOS ORDER BY DESCRICAO desc;
 
4.
CONT(*)
SUM(x)
MED(X)
AVG (x)
MAX(x)
 
5.
O esquema abaixo refere-se a um banco de dados criado para
auxiliar na gerência de orientação de alunos por professores e da
defesa do Trabalho de Conclusão de Curso (TCC) pelos
alunos.  Analise-o:
Professor (MatP,NomeP, telP, emailP)
Aluno (MatA, MatP, NomeA, emailA)
TCC (IDTCC, MatA, Titulo, Resumo)
Assinale a única alternativa que retorna exatamente os dados
exibidos na figura:
Em uma tabela criada no banco de dados com o nome VEICULOS, contendo os campos ID, 
DESCRICAO, MARCA e MODELO, indique a alternativa que apresenta o comando correto para
selecionar a quantidade de veículos cadastrados por modelo, ordenado por modelo em 
ordem crescente.
Dentre as opções a seguir, qual não é uma função de 
grupo?
https://simulado.estacio.br/bdq_simulados_exercicio.asp#
https://simulado.estacio.br/bdq_simulados_exercicio.asp#
https://simulado.estacio.br/bdq_simulados_exercicio.asp#
SELECT NOMEAREA, COUNT (CODAREA)"QTD DE LOCAIS" FROM AREA, LOCAL GROUP BY NOMEAREA;
SELECT NOMELOCAL, COUNT (L.CODAREA)"QTD DE LOCAIS" FROM AREA A, LOCAL L WHERE A.CODAREA = 
L.CODAREA GROUP BY NOMEAREA;
SELECT NOMELOCAL, COUNT (CODAREA)"QTD DE LOCAIS" FROM AREA A, LOCAL L WHERE A.CODAREA = 
L.CODAREA GROUP BY NOMEAREA;
SELECT NOMEAREA, COUNT (L.CODAREA)"QTD DE LOCAIS" FROM AREA A, LOCAL L WHERE A.CODAREA = 
L.CODAREA;
SELECT NOMEAREA, COUNT (L.CODAREA)"QTD DE LOCAIS" FROM AREA A, LOCAL L WHERE A.CODAREA = 
L.CODAREA GROUP BY NOMEAREA;
 
6.
O esquema de banco de dados apresentado abaixo faz parte de um banco de dados criado a
partir de um conjunto de dados públicos de captura de tubarões entre os anos de 2001 e 2013
na costa da Austrália. Os dados podem ser baixados no endereço: https://data.qld.gov.au/dataset/shark-
control-program-shark-catch-statistics/resource/5c6be990-3938-4125-8cca-dac0cd734263
Características do esquema: Chave primária sublinhada   e chave estrangeira em itálico.
Seguem algumas tabelas do Esquema:
Tubarão (IDTubarão, IDEspécie, Comprimento, Sexo)
Captura (NumCaptura, IDTubarão, IDLocal, Data, TempAgua)
Local (IDLocal, CodArea, NomeLocal)
Area (CodArea, NomeArea)
Deseja-se saber qual a quantidade de locais que foram utilizados na captura de tubarões agrupados pelo nome de cada área. 
Assinale a alternativa que retorna corretamente esta consulta:
 
https://simulado.estacio.br/bdq_simulados_exercicio.asp#
SELECT MEDIA(NUMVAGASGARAGEM) FROM IMOVEL
SELECT SUM(NUMVAGASGARAGEM) "MÉDIA NUM. VAGAS DE GARAGEM" FROM IMOVEL
SELECT AVG(NUMVAGASGARAGEM) FROM IMOVEL
SELECT AVG(NUMVAGASGARAGEM) "MÉDIA NUM. VAGAS DE GARAGEM" FROM IMOVEL
SELECT MEDIA(NUMVAGASGARAGEM) "MÉDIA NUM. VAGAS DE GARAGEM" FROM IMOVEL
 
7.
SELECT * FROM TURMA t,MATRICULA m ON t.nome_turma = m.nome_turma WHERE count(*) > 20
SELECT t.nome_turma,count(*) FROM TURMA t INNER JOIN MATRICULA m ON t.nome_turma = m.nome_turma 
GROUP BY 1 HAVING count(*) > 20
SELECT nome_turma,count(*) FROM TURMA t INNER JOIN MATRICULA m ON t.nome_turma = m.nome_turma 
GROUP BY nome_turma WHERE count(*) > 20
SELECT t.nome_turma,count(*) FROM TURMA t INNER JOIN MATRICULA m ON t.nome_turma = m.nome_turma 
HAVING count(*) > 20 GROUP BY t.nome_turma
SELECT nome_turma,count(*) FROM TURMA t INNER JOIN MATRICULA m ON t.nome_turma = m.nome_turma 
WHERE count(*) > 20
Considerando as tabelas descritas a seguir e a legenda: PK - chave primária / FK - chave 
estrangeira. 1 - ALUNO (matricula,nome,especializacao,nivel,idade), onde matricula é a PK; 2
- TURMA (nome_turma,horario,sala), onde nome_turma é a PK; 3 - MATRICULA 
(numero_aluno,nome_turma,numero_posicao), onde numero_aluno e nome_turma formam a 
PK, numero_aluno é FK referenciando ALUNO e nome_turma é FK referenciando TURMA. 
Marque a opção que contém o código em SQL para exibir o(s) nome(s) da(s) turma(s) que 
tem mais de 20 alunos matriculados:
https://simulado.estacio.br/bdq_simulados_exercicio.asp#
 
8.
Quando usar funções de Coluna
Sempre apos o comando Where
Quando Usar o Order By
Quando usar o Order By em conjunto com a função SUM
Quando usar a Função Where
Quando usar o Group By
https://simulado.estacio.br/bdq_simulados_exercicio.asp#

Outros materiais