Buscar

DB_atv4

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

Prévia do material em texto

1) 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 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.  
2) 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 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.   
3) 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 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. 
4) As funções de agregação permitem extrair informações úteis a partir de um determinado conjunto de resultados, elas sumarizam os valores de determinados campos em um único valor e elas podem ser usadas em todos os dados de um conjunto de resultados ou então podem ser combinadas com as cláusulas GROUP BY.
 
Em um sistema, existe um cadastro de clientes com os seguintes dados:
	CODIGO
	NOME
	CONTATO
	DATA_NASC
	SEXO
	BAIRRO
	1
	Adriana Araújo
	71 982213455
	1987-02-03
	F
	Barra
	2
	Renato Nogueira
	11 933321999
	1977-07-09
	M
	Morumbi
	3
	Viviane Sales
	11 987712022
	1995-11-02
	F
	Vila Madalena
	4
	Marcela Campos
	71 973514498
	1980-01-19
	F
	Barra
	5
	Rodrigo Gonçalves
	21 986121942
	1992-05-10
	M
	Centro
	6
	Jorge Marinho
	11 995439812
	1990-06-07
	M
	Morumbi
	7
	Rodrigo Vieira
	71 972318872
	1985-08-27
	M
	Centro
	8
	Vanessa Aquino
	21 933211346
	1972-02-15
	F
	Centro
 
Para extrair nesta tabela a data de nascimento do cliente mais velho, a cláusula SELECT deve apresentar a seguinte função de agregação:
Resposta correta. A alternativa está correta. Ao se utilizar a função MIN será recuperada a menor data de nascimento do cliente, portanto a data de nascimento do cliente mais velho.   
5) 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 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).
6) 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_CLIENTEA respeito desta consulta assinale a afirmação correta:
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. 
7) 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 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.
8) 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 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.
9) A modelagem de um banco de dados permite compreender como as tabelas estão relacionadas entre si, permite identificar chaves primárias e as chaves estrangeiras envolvidas nos relacionamentos e assim serve de suporte para construção de consultas, especificamente para saber quais campos usar em junções.
 
Em um banco de dados, a parte referente ao cadastro de produtos associado ao itens de compras (tabela PRODUTO_COMPRA) está mostrado a seguir.
            Fonte: Elaborado pelo Autor (2019)
 
Em certo setor da empresa, houve a necessidade de recuperar todos os produtos (com sua descrição e a descrição da sua categoria) que possuem compra e apenas aqueles que de fato possuem compras associadas e que possuem a categoria cadastrada. A cláusula de junção após a palavra chave FROM na consulta deve ser:
Resposta correta. A alternativa está correta pois pela especificação da consulta, que envolve recuperar todos os produtos e apenas os produtos que possuem compras associadas e com as categorias cadastradas deve ser expressa como INNER JOIN tanto entre as tabelas CATEGORIA e PRODUTO quanto também com PRODUTO_COMPRA e que está sendo feita nesta resposta.
10) 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 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.

Continue navegando

Outros materiais