Baixe o app para aproveitar ainda mais
Prévia do material em texto
Usuário Curso Teste Iniciado Enviado Status ADM01040 BANCO DE DADOS GR0272202 ATIVIDADE 4 (A4) Completada Resultado da tentativa 10 em 10 pontos Tempo decorrido 3 horas, 12 minutos Resultados exibidos Respostas enviadas, Respostas corretas, Comentários Pergunta 1 Resposta Selecionada: Resposta Correta: Feedback da resposta: Um banco de dados é um conjunto de componentes de�nidos 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 �nalidades. Sobre as visões, qual das sentenças a seguir representa uma das vantagens de usar estes componentes em um banco de dados? Permite que consultas mais complexas sejam manipuladas de forma mais simples Permite que consultas mais complexas sejam manipuladas de forma mais simples 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 Resposta Selecionada: Resposta Correta: Feedback da resposta: As views permitem simpli�car a forma como as consultas podem ser feitas pois uma view abstrai a complexidade das consultas, por exemplo consultas com muitas junções, funções de agregação e outras. Daí, uma consulta utiliza a view como se fosse uma tabela virtual cuja de�nição é baseada na consulta mais complexa. Em um determinado sistema de compras, foi criada a seguinte view. CREATE VIEW `COMPRAS_CLIENTES_VW AS (NOME, BAIRRO, DATA_NASC, S EXO, COD_CIDADE, CIDADE, DATA_COMPRA, VALOR) AS SELECT CLI.NOM E, CLI.BAIRRO, CLI.DATA_NASC, CLI.SEXO, CID.COD_CIDADE, CID.DCR_CIDADE, CMP.DATA_COMPRA, CMP.VLR_COMPRA FROM CLIENTE CL I INNER JOIN COMPRA CMP ON CLI.COD_CLIENTE = CMP.COD_CLIENTE INNER JOIN CIDADE AS CID ON CLI.COD_CIDADE = CID.COD_CIDADE Assinale qual sentença apresenta uma consulta correta feita com o uso da View. SELECT NOME, COUNT(*) FROM COMPRAS_CLIENTES_VW GROUP BY NOME SELECT NOME, COUNT(*) FROM COMPRAS_CLIENTES_VW GROUP BY NOME Resposta correta. A alternativa está correta pois o campo NOME está de�nido como um dos campos da VIEW no cabeçalho do CREATE VIEW e o count(*) vai contar quantas compras por cliente, via recurso de GROUP BY. Pergunta 3 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 1 em 1 pontos 1 em 1 pontos 1 em 1 pontos Resposta Selecionada: Resposta Correta: Feedback da resposta: 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 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 4 Resposta Selecionada: A criação de consultas em um banco de dados através do comando SELECT pode utilizar diversos recursos, ordenação, agrupamentos, �ltros 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 re�ete esta necessidade do setor de marketing é 1 em 1 pontos Resposta Correta: Feedback da resposta: 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 5 Resposta Selecionada: Resposta Correta: Feedback da resposta: O comando SELECT é bastante versátil e por meio das suas cláusulas de WHERE, ORDER BY, GROUP BY, JOIN permite especi�car �ltros, 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 a�rmações na sequência: I. HAVING II. DESC III. AVG IV. LEFT Associe as funções de agregação com as a�rmações sobre estes comandos: ( ) Permite especi�car 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 �ltros 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 especi�car um certo tipo de junção. O item II (DESC) é usado com os campos na cláusula ORDER BY para especi�car 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 �ltrar valores provenientes de cálculo de função agregada em consultas que possuem o group by. Pergunta 6 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 apresentaos 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 1 em 1 pontos 1 em 1 pontos Resposta Selecionada: Resposta Correta: Feedback da resposta: A consulta que calcula o total de empréstimo em reais realizado pela Fintech é SELECT SUM(valor) from EMPRESTIMO SELECT SUM(valor) from EMPRESTIMO 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 7 Resposta Selecionada: Resposta Correta: Feedback 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 �ltros, 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 8 Resposta Selecionada: Resposta Correta: Feedback da resposta: O comando SELECT pode conter várias cláusulas, por exemplo, para indicar as tabelas fonte dos dados (FROM), para estabelecer os �ltros (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: V, V, F, F. V, V, F, F. 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. 1 em 1 pontos 1 em 1 pontos Quarta-feira, 26 de Agosto de 2020 Pergunta 9 Resposta Selecionada: Resposta Correta: Feedback 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 �sicamente 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 �sicamente e que por isso oferece limitações para atualizações porém não oferece limitações quanto à consulta. Pergunta 10 Resposta Selecionada: Resposta Correta: Feedback 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 �ltro sobre os campos calculados. Por exemplo, ao avaliar os clientes e o total de compras calculado via uma função SUM, pode-se querer �ltrar 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 �ltro 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 �ltro sobre um campo calculado. Por exemplo, para o caso do exemplo, uma cláusula having seria “HAVING SUM(VLR_COMPRA) >= 500”. ← OK 1 em 1 pontos 1 em 1 pontos javascript:launch('/webapps/blackboard/content/listContent.jsp?content_id=_14246968_1&course_id=_610681_1&nolaunch_after_review=true');
Compartilhar