Buscar

BANCO DE DADOS - Atividade 4

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 7 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 7 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

• Pergunta 1 
0,25 em 0,25 pontos 
 
O banco de dados serve de fonte para atender às diversas demandas de setores 
informatizados por um determinado sistema, por exemplo, um setor de recursos humanos 
pode recuperar o total da folha de pagamento, um setor de vendas pode requisitar a 
quantidade de produtos vendidos por categoria e um setor de marketing pode requisitar 
alguns relatórios sobre os clientes. 
Em um sistema de locação de automóveis, a tabela de cliente apresenta o seguinte formato 
e com uma breve amostra de dados. 
 
Cod Nome Sexo Idade Cidade 
2 Ademar M 22 São Paulo 
1 Fabrício M 41 Salvador 
5 Joelma F 60 Rio de Janeiro 
4 Carlos M 21 São Paulo 
3 Adriana F 30 Curitiba 
 
 
O setor de marketing está avaliando as regiões onde a empresa atua e o volume de 
clientes em cada região. Daí, surgiu a necessidade de recuperar as cidades nesta tabela e 
para cada cidade, o total de clientes existentes. A consulta que melhor atende à esta 
necessidade é: 
 
Resposta 
Selecionada: 
 
SELECT CIDADE, COUNT(COD) FROM 
CLIENTE GROUP BY CIDADE 
Resposta 
Correta: 
 
SELECT CIDADE, COUNT(COD) FROM 
CLIENTE GROUP BY CIDADE 
Feedback 
da 
resposta: 
Resposta correta. A alternativa está correta. Para atender a esta 
demanda de para cada cidade recuperar a quantidade de 
clientes é necessário realizar uma consulta com agrupamento 
(CROUP BY), no caso um agrupamento por cidade e 
contabilizando (COUNT) valores de outros campos. 
 
 
• Pergunta 2 
0,25 em 0,25 pontos 
 
Um banco de dados é um conjunto de componentes definidos de diversas formas via 
comandos de DDL. Por exemplo, dentre os componentes existem as tabelas, os 
procedimentos armazenados e as visões, dentre outros, cada um com suas finalidades. 
Sobre as visões, qual das sentenças a seguir representa uma das vantagens de usar estes 
componentes em um banco de dados? 
 
Resposta 
Selecionada: 
 
Permite que consultas mais complexas sejam manipuladas 
de forma mais simples 
Resposta Correta: 
Permite que consultas mais complexas sejam manipuladas 
de forma mais simples 
Feedback da 
resposta: 
Resposta correta. A alternativa está correta pois com a criação 
de uma view, uma consulta complexa é encapsulada e os 
usuários passam a ter um mecanismo mais simples para 
consultar os dados de tabelas. 
 
 
• Pergunta 3 
0,25 em 0,25 pontos 
 
A ordenação de registros é expressa em uma cláusula parte de uma consulta com um 
SELECT que contém ainda as cláusulas where para realizar os filtros e pode ainda conter 
cláusulas “group by” para realizar agrupamentos. Quando se está fazendo a ordenação de 
registros os campos são especificados com as palavras chaves ‘ASC’ e ‘DESC’ indicando 
ordem ascendente e decrescente. 
Ao escrever uma consulta proveniente da junção entre a tabela de Categoria e Produto em 
um sistema de papelaria os registros encontrados foram os seguintes: 
DCR_PRODUTO VALOR DCR_CATEGORIA 
Caderno Matérias 15,60 Cadernos 
Caderno Simples 11,45 Cadernos 
Caneta 1,35 Canetas e afins 
Grafite 7,50 Canetas e afins 
Lapiseira 20,40 Canetas e afins 
 
Fonte: Elaborado pelo autor (2019). 
Qual cláusula de ordenação foi escrita na consulta? 
 
Resposta 
Selecionada: 
 
ORDER BY DCR_CATEGORIA ASC, 
DCR_PRODUTO ASC 
Resposta Correta: 
ORDER BY DCR_CATEGORIA ASC, 
DCR_PRODUTO ASC 
Feedback da 
resposta: 
Resposta correta. A alternativa está correta pois na listagem 
perceba que a categoria está em ordem crescente e dentro de 
cada categoria os produtos estão em ordem crescente 
também. 
 
 
• Pergunta 4 
0,25 em 0,25 pontos 
 
Uma visão (view) é um dos componentes que pode ser criado em um banco de dados junto 
com as tabelas, stored procedures, usuários e outros. Uma view, por ser um componente 
que ajuda a estruturar a forma como os dados são consultados, é definido por comandos 
de DDL e existe uma forma e comando específico para esta criação. 
Sobre o comando para criação de Views, analise as sentenças a seguir e assinale (V) para 
a(s) verdadeira(s) e (F) para a(s) falsa(s). 
 
I. ( ) O comando para a criação de uma view é o “ADD VIEW” 
II. ( ) Campos das views precisam ter os mesmos nomes da consulta usada para defini-la 
III. ( ) Ao ser criada, os dados da view são copiados para uma estrutura própria 
IV. ( ) Uma view pode ser criada com base em outra view 
 
A partir das associações feitas anteriormente, assinale a alternativa que apresenta a 
sequência correta: 
 
Resposta Selecionada: 
F, F, F, V. 
Resposta Correta: 
F, F, F, V. 
Feedback 
da 
resposta: 
Resposta correta. A alternativa é a correta. Na sequência dos 
itens, o item I é falso, o comando para criação de view é 
“CREATE VIEW”, análogo à criação de tabela. O item II é falso, 
 
os campos das views podem ter nomes mais intuitivos, 
diferentes dos campos de tabelas que muitas vezes são 
“codificados”. O item III é falso, as views não possuem dados, 
elas simplesmente usam os dados das tabelas como se fosse 
uma “tabela virtual”. O item IV é verdadeiro, de fato uma view 
pode conter outra view em sua definição. 
 
• Pergunta 5 
0,25 em 0,25 pontos 
 
O comando SELECT é bastante versátil e por meio das suas cláusulas de WHERE, 
ORDER BY, GROUP BY, JOIN permite especificar filtros, ordenações, agrupamentos e 
junções respectivamente. Estes e outros recursos oferecem suporte ao usuário para 
escrever suas consultas. 
Em relação a algumas das cláusulas, comandos e palavras chave para escrita dos 
comandos, realize a associação entre os itens a seguir e as afirmações na sequência: 
 
I. HAVING 
II. DESC 
III. AVG 
IV. LEFT 
 
Associe as funções de agregação com as afirmações sobre estes comandos: 
 
( ) Permite especificar qual o tipo de junção deve ser executada 
( ) Estabelece ordem decrescente na cláusula ORDER BY 
( ) Função de agregação que pode ser usada com GROUP BY 
( ) Permite editar filtros em consultas com GROUP BY 
 
Assinale a alternativa que apresenta a sequência correta: 
 
Resposta Selecionada: 
IV, II, III, I 
Resposta Correta: 
IV, II, III, I 
Feedback 
da 
resposta: 
Resposta correta. A alternativa está correta. Comentando na 
sequência. O item IV, LEFT é usado junto com OUTER JOIN 
(LEFT OUTER JOIN) para especificar um certo tipo de junção. O 
item II (DESC) é usado com os campos na cláusula ORDER BY 
para especificar o ordenação decrescente. Caso a ordenação 
seja crescente, a palavra seria ASC. Item III (AVG) é de fato 
uma função de agregação para cálculo de média. E o item I 
(HAVING) permite filtrar valores provenientes de cálculo de 
função agregada em consultas que possuem o group by. 
 
 
• Pergunta 6 
0,25 em 0,25 pontos 
 
O comando de SELECT é um dos comandos de DML (Data Manipulation Language) 
responsável por recuperar os registros de tabelas e ele possui vários recursos como filtros, 
ordenação, subconsultas e junções, além de outros e isso permite que este comando 
atenda às mais variadas necessidade de informação de seus usuários. 
Em um sistema de Locadora, um determinado gerente solicitou à equipe de Tecnologia de 
Informação uma listagem com o volume de locações de carros organizadas por modelo de 
carro. A listagem apresenta cada modelo e para cada modelo apresenta a quantidade de 
locações. 
 
A cláusula do comando SELECT que atende esta demanda de avaliar a quantidade de 
locações por modelo de carro é o: 
Resposta Selecionada: 
GROUP BY 
Resposta Correta: 
GROUP BY 
Feedback 
da 
resposta: 
Resposta correta. A alternativa está correta, a cláusula de 
GROUP BY no comando de SELECT processa os 
agrupamentos em que os registros com o mesmo valor de 
modelosão agrupados e com a contabilização (COUNT) 
associado a algum outro campo. Portanto, para cada modelo 
serão contabilizadas as locações como requer o enunciado. 
 
 
• Pergunta 7 
0,25 em 0,25 pontos 
 
O comando SELECT pode conter várias cláusulas, por exemplo, para indicar as tabelas 
fonte dos dados (FROM), para estabelecer os filtros (WHERE), para ordenação dos dados 
(ORDER BY). Estas cláusulas e o emprego de diversos tipos de recursos torna este 
comando bastante útil para expressar as necessidades de informações de usuários de um 
banco de dados. 
 
A respeito dos recursos para construção de consultas avançadas com o SELECT, analise 
as sentenças a seguir e assinale (V) para a(s) verdadeira(s) e (F) para a(s) falsa(s): 
 
I. ( ) Subconsultas permitem que um comando de SELECT contenha outro comando de 
SELECT interno. Um exemplo, é usar subconsultas com um operador IN. 
II.( ) Os agrupamentos permitem resumir os dados agrupando registros, por exemplo, 
podemos agrupar os clientes por bairro e os bairros serão os agrupamentos 
III. ( ) Funções de agregação permite que os dados sejam consultados de forma mais 
simples, com um mecanismo análogo a uma tabela virtual 
IV. ( ) As junções são cálculos que permitem realizar por exemplo contabilizações, cálculo 
de média, maior valor e outros 
 
A partir das associações feitas anteriormente, assinale a alternativa que apresenta a 
sequência correta: 
 
Resposta Selecionada: 
V, V, F, F. 
Resposta Correta: 
V, V, F, F. 
Feedback 
da 
resposta: 
Resposta correta. A alternativa está correta. O item I é 
verdadeiro pois subconsultas permite aninhar comandos 
SELECT, um comando SELECT pode conter outro mais interno 
e uma das formas usadas é de fato com o operador IN. O item II 
é verdadeiro pois agrupamentos resumem dados juntando 
registros com valores iguais nos campos do agrupamento e 
aplicando funções de agregação nos outros campos. O Item III é 
falso pois o mecanismo semelhante a uma tabela virtual que 
facilita o uso de consultas é uma VIEW e não as funções 
agregadas que servem para cálculos como totalização e 
contabilização. O item IV é falso pois as junções servem para 
 
combinar tabelas através das chaves estrangeiras. O recurso 
que realiza contabilizações são as funções de agregação. 
 
• Pergunta 8 
0,25 em 0,25 pontos 
 
Dados em tabelas diferentes podem compor um conjunto de resultados em um comando de 
SELECT através das junções. Alguns tipos de junções são as junções internas e as junções 
externas, estas últimas podem ser pela esquerda ou pela direita. 
Em um sistema de uma universidade existe o cadastro de Alunos e o de Cursos, onde em 
aluno pode conter apenas um curso e em curso pode conter vários cursos. Em uma 
consulta foi feita uma junção (join) entre as tabelas Alunos e Cursos e na consulta SELECT, 
Alunos e Cursos estão escritas nesta ordem (Alunos primeiro, antes de Cursos). O 
resultado da consulta está expresso na tabela a seguir: 
Matrícula Nome Cod_Curso Dcr_Curso 
322871 Joana Vieira 2 Engenharia Elétrica 
322609 Márcio Nogueira 2 Engenharia Elétrica 
212320 Cristiano Azevedo 12 Direito 
212201 Lúcia Vergamini 12 Direito 
NULL NULL 4 Gestão Ambiental 
 
Quadro - Resultado de consulta com junção entre Alunos e Cursos 
Fonte: Elaborado pelo autor (2019). 
Qual foi a junção realizada nesta consulta? 
 
Resposta Selecionada: 
Right Outer Join 
Resposta Correta: 
Right Outer Join 
Feedback 
da 
resposta: 
Resposta correta. A resposta está correta pois perceba que na 
última linha existe o curso Gestão Ambiental que não possui 
aluno correspondente, e o curso está a direita na escrita do 
SELECT porque aparece depois de aluno (está à esquerda). E 
se o campo de aluno ficou NULL é por que os valores direita 
prevaleceram (right outer join). 
 
 
• Pergunta 9 
0,25 em 0,25 pontos 
 
Em um banco de dados, os registros são armazenados e decompostos em tabelas e o 
relacionamento entre elas ocorre através de chaves estrangeiras que permitem combinar 
os dados. Por exemplo, os dados de cliente estão armazenados em uma tabela e os dados 
de compras estão armazenados em outra tabela, para se listar os dados de clientes com os 
dados de compras em conjunto, usa-se a chave estrangeira código do cliente para este elo. 
Neste sistema de loja, a seguinte consulta foi realizada: 
 
 SELECT CLI.*, COMP.* 
 FROM CLIENTE AS CLI LEFT OUTER JOIN COMPRAS AS COMP 
 ON CLI.COD_CLIENTE = COMP.COD_CLIENTE 
 
A respeito desta consulta assinale a afirmação correta: 
 
Resposta 
Selecionada: 
 
Todos os registros de clientes, mesmo que não tenham 
compras, serão visualizados 
Resposta Correta: 
 
Todos os registros de clientes, mesmo que não tenham 
compras, serão visualizados 
Feedback 
da 
resposta: 
Resposta correta. A alternativa está correta pois o tipo de 
junção empregado é o LEFT OUTER JOIN, isto é, a tabela da 
esquerda vai ser usada como base e como CLIENTE foi escrita 
primeiro (é a tabela da esquerda) todos os registros dela serão 
recuperados. 
 
• Pergunta 10 
0,25 em 0,25 pontos 
 
A criação de consultas em um banco de dados através do comando SELECT pode utilizar 
diversos recursos, ordenação, agrupamentos, filtros e outros. Um destes recursos, que 
permite consultas mais avançadas, é o uso de subconsultas em que um comando de 
SELECT pode conter um outro comando SELECT em alguma de suas outras cláusulas. 
Em um sistema de uma loja, imagine que existe uma tabela de COMPRAS com os 
seguintes dados. 
 
 
 
NOME DATA VLR_COMPRA 
Renato Nogueira 12/03/2019 35.60 
Renato Nogueira 21/03/2019 120.70 
Renato Nogueira 25/04/2019 81.50 
Rodrigo Gonçalves 14/03/2019 57.80 
Rodrigo Gonçalves 04/04/2019 31.00 
Vanessa Aquino 16/03/2019 23.70 
Vanessa Aquino 10/04/2019 92.50 
 
 
 Fonte: Elaborado pelo Autor (2019) 
 
Para avaliar o volume de vendas dos clientes, o setor de marketing solicitou uma listagem 
com os clientes e o seu volume total de compras e ordenados pelo volume de compras em 
ordem decrescente. A consulta que reflete esta necessidade do setor de marketing é 
 
Resposta 
Selecionada: 
 
SELECT * 
 FROM (SELECT NOME, 
SUM(VLR_COMPRA) as TOTAL 
 FROM COMPRAS) AS 
VOLUME_COMPRAS 
 ORDER BY TOTAL DESC 
Resposta Correta: 
SELECT * 
 FROM (SELECT NOME, 
 
SUM(VLR_COMPRA) as TOTAL 
 FROM COMPRAS) AS 
VOLUME_COMPRAS 
 ORDER BY TOTAL DESC 
Feedback 
da 
resposta: 
Resposta correta. A alternativa está correta. Perceba que a 
subconsulta realiza a totalização de vendas e abrevia o 
somatório SUM(VLR_COMPRA) como TOTAL. Este campo é o 
empregado na ordenação com a palavra DESC, em ordem 
decrescente, os maiores primeiro. 
 
Segunda-feira, 23 de Setembro de 2019 13h51min56s BRT

Continue navegando