Buscar

BANCO DE DADOS ATV 04

Prévia do material em texto

BANCO DE DADOS PTA - 
202010.ead-3868.03 
Teste ATIVIDADE 4 (A4) 
Iniciado 31/03/20 19:48 
Enviado 31/03/20 20:45 
Status Completada 
Resultado da tentativa 10 em 10 pontos 
Tempo decorrido 56 minutos 
Resultados exibidos Respostas enviadas, Respostas corretas, 
Comentários 
• Pergunta 1 
1 em 1 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 
Comentário 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 2 
1 em 1 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 
Comentário 
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 
modelo sã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 3 
1 em 1 pontos 
 
Os bancos de dados permitem que dados básicos, provenientes dos 
processos operacionais de um negócio, possam ser processados e 
sumarizados para se obter informações de nível gerencial e estratégico. Por 
exemplo, a quantidade de carros locados por semana em uma locadora, a 
quantidade de alunos matriculados em uma escola, além de outras 
situações ilustram o que pode ser processado facilmente com consultas via 
SELECT. 
Uma determinada Fintech realiza empréstimos para pessoas de uma 
comunidade e a tabela EMPRESTIMO mostrada a seguir apresenta os 
registros de empréstimos realizados: 
CPF Data Sexo Valor 
02311220012 10/04/2019 M R$ 1.200,00 
91311770028 13/04/2019 F R$ 3.500,00 
84911560025 21/04/2019 F R$ 4.100,00 
73923560458 23/04/2019 M R$ 1.000,00 
64821569228 02/05/2019 M R$ 1.600,00 
 
 
A consulta que calcula o total de empréstimo em reais realizado pela Fintech 
é 
 
Resposta Selecionada: 
SELECT SUM(valor) from EMPRESTIMO 
Resposta Correta: 
SELECT SUM(valor) from EMPRESTIMO 
Comentário da 
resposta: 
Resposta correta. A alternativa está correta pois basta 
que seja usada a função SUM associada ao campo 
VALOR totalizando toda a tabela (sem group by). 
 
 
• Pergunta 4 
1 em 1 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 
Comentário 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 5 
1 em 1 pontos 
 
As cláusulas WHERE, ORDER BY, GROUP BY, JOIN e outras são 
exemplos de partes de um SELECT e cada uma fornece algum recurso que 
traduz alguma necessidade ao se realizar consultas sobre os dados. Ao 
consultar as tabelas de CARRO e FABRICANTE em um sistema de 
locadoras, foi realizada a seguinte consulta: 
 
SELECT F.FABRICANTE, COUNT(*), AVG(C.VLR_LOCACAO) 
FROM CARRO as C INNER JOIN FABRICANTE as F 
ON (C.COD_FABRICANTE = F.COD_FABRICANTE) 
WHERE ANO > 2015 
AND AR_COND = ‘S’ 
GROUP BY FABRICANTE 
 
Considerando esta consulta, analise e assinale nas sentenças a seguir (V) 
para a(s) verdadeira(s) e (F) para a(s) falsa(s). 
 
I. ( ) Os carros do ano 2015 serão considerados na consulta 
II. ( ) Será mostrada a contagem de carros conforme condições e agrupados 
por fabricante 
III. ( ) Apenas carros com ar condicionado serão contabilizados 
IV. ( ) Apenas carros que tiverem um fabricante cadastrado serão 
considerados 
A partir das associações feitas anteriormente, assinale a alternativa que 
apresenta a sequência correta: 
 
Resposta Selecionada: 
F, V, V, V. 
Resposta Correta: 
F, V, V, V. 
Comentário 
da resposta: 
Resposta correta. A alternativa está correta. O item I é falso 
pois carros do ano de 2015 não atendem à condição ANO > 
2015, deveria ser ANO >= 2015. O item II é verdadeiro, a 
consulta faz um agrupamento por fabricante contando os 
registros que atendem às condições em WHERE. O item III 
é verdadeiro pois a condição AR_COND=’S’ é indicativo que 
o carro possui ar condicionado. E o item IV é verdadeiro 
pois como é feito um INNER JOIN, apenas registros que 
possuem valores e são correspondentes são válidos para o 
resultado. 
 
 
• Pergunta 6 
1 em 1 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. 
Comentário 
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 sefosse uma “tabela virtual”. O item IV é 
 
verdadeiro, de fato uma view pode conter outra view em sua 
definição. 
 
• Pergunta 7 
1 em 1 pontos 
 
As funções de agregação são úteis para contabilizar, totalizar ou avaliar 
registros em consultas construídas com o comando SELECT, com ou sem a 
cláusula GROUP BY. Quando usada sem agrupamentos, considera todos 
os registros dentro de um conjunto de resultados. Quando usada com group 
by, resumem os registros de um agrupamento em um valor conforme o 
objetivo da função. 
Em relação às funções de agregação, realize a associação de cada uma 
delas com as afirmações na sequência: 
 
I. SUM 
II. COUNT 
III. AVG 
IV. MAX 
 
Associe as funções de agregação com as afirmações sobre estes comandos 
 
( ) Podem ser aplicadas tendo como parâmetro o “*” 
( ) Retorna o maior valor de um conjunto de dados 
( ) Usada para totalizar valores 
( ) Usada para o cálculo de média de valores 
 
 
Assinale a alternativa que apresenta a sequência correta: 
 
Resposta Selecionada: 
II, IV, I, III 
Resposta Correta: 
II, IV, I, III 
Comentário 
da resposta: 
Resposta correta. A alternativa está correta. Comentando 
na sequência. O item II, COUNT pode de fato ser usado na 
forma count(*) pois ele realiza uma contagem de registros.O 
item IV, MAX, de fato calcula o valor máximo dentro de um 
conjunto de valores. SUM (Item I) é usado para totalizar, 
fazer somatório de valores. E AVG (item III) é uma 
abreviação de average, que representa a média de um 
conjunto de valores. 
 
 
• Pergunta 8 
1 em 1 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 
Comentário 
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 
1 em 1 pontos 
 
Em um servidor de dados, os dados estão armazenados em tabelas e pelas 
questões de normalização, cada tabela trata especificamente dados 
relacionados com suas respectivas entidades. Quando ocorre a 
necessidade por informações mais abrangentes, os dados de tabelas 
diferentes precisam compor um resultado conjunto e o mecanismo que 
permite combinar dados de várias tabelas são as junções que podem ser de 
vários tipos. 
Considerando uma parte do modelo de um sistema de clínica médica, 
referente aos médicos e especialidades, tem-se as seguintes tabelas: 
 
MEDICO (COD_MEDICO, CRM, NOME, CONTATO, 
COD_ESPECIALIDADE) 
 ESPECIALIDADE (COD_ESPECIALIDADE, 
DCR_ESPECIALIDADE) 
 
Todo médico está associado a uma especialidade, mas na clínica podem 
existir especialidades que não possuem médicos. A consulta que recupera 
todas as especialidades com os médicos relacionados, recuperando mesmo 
as especialidades sem médico cadastrado é: 
 
Resposta 
Selecionada: 
 
SELECT * FROM MEDICO as M RIGHT 
OUTER JOIN ESPECIALIDADE as E 
 ON E.COD_ESPECIALIDADE = 
M.COD_ESPECIALIDADE 
Resposta 
Correta: 
 
SELECT * FROM MEDICO as M RIGHT 
OUTER JOIN ESPECIALIDADE as E 
 ON E.COD_ESPECIALIDADE = 
M.COD_ESPECIALIDADE 
Comentário 
da resposta: 
Resposta correta. A alternativa está correta. As tabelas 
escritas no join estão na sequencia Medico primeiro 
(esquerda) e Especialidade depois (direita) e a junção foi 
feita pela direita (RIGHT OUTER JOIN), portanto usando a 
tabela especialidade como base para junção. 
 
• Pergunta 10 
1 em 1 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. 
Comentário 
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.

Mais conteúdos dessa disciplina