Buscar

Resposta Atividade 4 - BANCO DE DADOSpasseidireto

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 6 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 6 páginas

Prévia do material em texto

Pergunta 1
Resposta Selecionada: 
Resposta Correta: 
Comentário
da resposta:
Um banco de dados pode ser composto de diversos componentes, existem as
tabelas que são os principais componentes mas existem também outros. Sobre
um destes componentes, (ELMASRI, 2011, p.88) diz que “não necessariamente
existe em forma física, ela é considerada uma tabela virtual, ao contrário das
tabelas de base, cujas tuplas sempre estão armazenadas fisicamente no banco
de dados. Isso limita possíveis operações de atualização mas não oferece
quaisquer limitações sobre a consulta.“
 
ELMASRI, R.; NAVATHE, S. Sistemas de Banco de Dados . São Paulo:
Pearson Addison Wesley, 2011, p.88.
 
O componente objeto do comentário do EMASRI é
Uma view
Uma view
Resposta correta. A alternativa está correta. De fato uma view é uma tabela virtual,
que não possui dados fisicamente e que por isso oferece limitações para
atualizações porém não oferece limitações quanto à consulta.
Pergunta 2
Resposta
Selecionada:
 
Resposta Correta:
Comentário
da resposta:
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?
ORDER BY DCR_CATEGORIA ASC, DCR_PRODUTO ASC
ORDER BY DCR_CATEGORIA ASC, DCR_PRODUTO
ASC
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.
1 em 1 pontos
1 em 1 pontos
1 em 1 pontos
Pergunta 3
Resposta Selecionada: 
Resposta Correta: 
Comentário
da resposta:
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:
GROUP BY
GROUP BY
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 4
Resposta Selecionada: 
Resposta Correta: 
Comentário
da resposta:
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?
Right Outer Join
Right Outer Join
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).
1 em 1 pontos
Pergunta 5
Resposta Selecionada: 
Resposta Correta: 
Comentário
da resposta:
O uso de agrupamentos é um recurso utilizado ao criar consultas com SELECT
para sumarizar dados e realizar contabilizações ou totalizações, e a cláusula
usada é o GROUP BY. Uma demanda comum é, ao realizar agrupamentos,
realizar algum filtro sobre os campos calculados. Por exemplo, ao avaliar os
clientes e o total de compras calculado via uma função SUM, pode-se querer
filtrar apenas os clientes com este volume de compras acima de R$500,00. 
A palavra chave usada na cláusula que permite realizar este tipo de filtro sobre
campos calculados por funções de agregação é a:
HAVING
HAVING
 Resposta correta. A alternativa está correta. A cláusula HAVING é a alternativa
que se tem para realizar filtro sobre um campo calculado. Por exemplo, para o
caso do exemplo, uma cláusula having seria “HAVING SUM(VLR_COMPRA) >=
500”. 
Pergunta 6
Resposta Selecionada: 
Resposta Correta: 
Comentário
da resposta:
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:
F, F, F, V.
F, F, F, V.
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 7
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
1 em 1 pontos
1 em 1 pontos
1 em 1 pontos
Resposta
Selecionada:
 
Resposta Correta:
Comentário
da resposta:
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 peloAutor (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 é
SELECT * 
 FROM (SELECT NOME, SUM(VLR_COMPRA) as TOTAL 
 FROM COMPRAS) AS VOLUME_COMPRAS 
 ORDER BY TOTAL DESC
SELECT *
 FROM (SELECT NOME, SUM(VLR_COMPRA) as
TOTAL
 FROM COMPRAS) AS
VOLUME_COMPRAS
 ORDER BY TOTAL DESC
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. 
Pergunta 8
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: 
 
1 em 1 pontos
Resposta Selecionada: 
Resposta Correta: 
Comentário
da resposta:
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:
IV, II, III, I
IV, II, III, I
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 9
Resposta Selecionada: 
Resposta Correta: 
Comentário
da resposta:
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:
F, V, V, V.
F, V, V, V.
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
1 em 1 pontos
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 10
Resposta
Selecionada:
Resposta
Correta:
Comentário
da resposta:
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:
Todos os registros de clientes e de compras mesmo que não tenham
correlação entre si serão visualizados
Todos os registros de clientes, mesmo que não tenham compras, serão
visualizados
Sua resposta está incorreta. A alternativa está incorreta pois como 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 de clientes serão recuperados. Para se recuperar todos os registros de
compras deveria ser usado o RIGHT OUTER JOIN usando a tabela de COMPRAS
como base para a junção. Como toda compra possui um cliente, o tipo INNER
JOIN traria todas as compras também mas não mostraria os clientes sem
compras. Para mostrar registros de ambas as tabelas que não possuam
correspondência na outra tabela deveria ser usado o FULL JOIN. Para recuperar
apenas os clientes com compras também o INNER JOIN deveria ter sido usado..
0 em 1 pontos

Continue navegando