Baixe o app para aproveitar ainda mais
Prévia do material em texto
18/04/2023, 14:53 Avaliação II - Individual about:blank 1/7 Prova Impressa GABARITO | Avaliação II - Individual (Cod.:828862) Peso da Avaliação 1,50 Prova 62462539 Qtd. de Questões 10 Acertos/Erros 10/0 Nota 10,00 A linguagem SQL nos permite extrair dados de mais de uma tabela utilizando o comando SELECT e informando mais de uma tabela na cláusula FROM separadas por vírgulas. Após isto, precisamos na cláusula WHERE ligar as tabelas em suas respectivas chaves primárias e chaves estrangeiras. Da mesma forma, a cláusula JOIN é usada para combinar linhas de 2 ou mais tabelas, baseadas nas relações existentes entre elas. Referente à cláusula JOIN, analise as sentenças a seguir: I- Para retornar todos os registros correspondentes de duas tabelas, tendo como retorno NULO quando o registro correspondente não existir, utilizando a cláusula INNER JOIN. II- Para retornar todos os registros da esquerda e seus correspondentes da direita, utilizamos a cláusula LEFT JOIN. III- Podemos utilizar simplesmente a declaração da cláusula JOIN, sendo equivalente a cláusula INNER JOIN. IV- RIGHT JOIN não é um comando válido em um banco de dados relacional. Assinale a alternativa CORRETA: Fonte: SQL JOIN. Disponível: https://goo.gl/MmeDJ4. Acesso em: 1º maio 2018. A I e IV, apenas. B II e III, apenas. C I, II, III e IV. D I e II, apenas. A Linguagem SQL oferece subconsultas ou “subqueries”, que são um forma de se fazer consulta aninhadas ou de criar uma expressão de SELECT – FROM – WHERE utilizada dentro de outra consulta. Essas subconsultas ajudam a extrair resultados mais precisos e complexos. Com relação às subconsultas, classifique V para as sentenças verdadeiras e F para as falsas: ( ) A linguagem SQL permite criar consultas de consulta, ou seja, que uma subconsulta seja informada dentro da cláusula FROM como uma tabela. ( ) Uma subconsulta informada dentro da cláusula FROM como uma tabela pode também se relacionar com outras tabelas ou até com outra subconsulta. ( ) A linguagem SQL permite utilizar uma subconsulta na cláusula WHERE para limitar os valores de uma consulta. ( ) Podemos criar uma subconsulta para trazer um valor de coluna dentro da cláusula SELECT. Assinale a alternativa que apresenta a sequência CORRETA: Fonte: MATTOS, R. Programação de Banco de Dados. Blog LinhadeCodigo. Disponível em: https://bityli.com/NCJ7zj. Acessado em: 9 mar. 2023. A V - V - V - V. VOLTAR A+ Alterar modo de visualização 1 2 18/04/2023, 14:53 Avaliação II - Individual about:blank 2/7 B F - V - F - V. C V - F - V - F. D V - V - F - F. Toda tabela deve apresentar colunas contendo nome e o tipo de dados. Referente ao tipo de dados, este define o tipo de valor que uma coluna pode conter. Uma coluna pode apresentar valores inteiros, monetários, caracteres, temporal, entre outros. Analise a seguir a tabela contendo os dados de movimentação: Considerando o exposto, classifique V para as sentenças verdadeiras e F para as falsas: ( ) A coluna “data_movimento” pode conter valores de data. Para consultar os registros onde as datas estão entre o dia 01/10/2018 e 05/10/2018, precisamos executar o comando SQL: SELECT * FROM movimentos WHERE data_movimento BETWEEN '2018-10-01' AND '2018-10-05'. ( ) A coluna “id_pessoa” apresenta valores inteiros. Para selecionar os movimentos que apresentam o “id_pessoa” igual a 3, precisamos executar o seguinte comando SQL: SELECT * FROM movimentos WHERE id_pessoa = 3. ( ) O comando SELECT * FROM movimentos WHERE id_pessoa = 2 AND data_movimento = '2018-10-02'; retorna apenas o registro da linha 1. ( ) O comando SELECT * FROM movimentos WHERE id_pessoa = 2 AND data_movimento = '2018-10-02'; retorna os registros das linhas 1 e 4. Assinale a alternativa que apresenta a sequência CORRETA: Fonte: W3schools. SQL Data Types for MySQL, SQL Server, and MS Access. Disponível em: http://bit.ly/2zskri3. Acesso em: 9 mar. 2023. A F - F - V - V. B V - V - V - F. C V - V - F - F. D V - F - V - F. Segue os comandos SQLs para criação das tabelas “cabelereiro” e “agenda”: CREATE TABLE cabelereiro ( Id serial PRIMARY KEY, Nome VARCHAR(50) NOT NULL, Telefone VARCHAR(20) NOT NULL, Idade INTEGER NOT NULL ); 3 4 18/04/2023, 14:53 Avaliação II - Individual about:blank 3/7 CREATE TABLE agenda ( Id serial PRIMARY KEY, Data_agenda TIMESTAMP NOT NULL, Id_cabelereiro INTEGER NOT NULL, Valor MONEY NOT NULL, Pago BOOLEAN NOT NULL, FOREIGN KEY (Id_cabelereiro) REFERENCES cabelereiro (id) ); Com base no exposto, classifique V para as sentenças verdadeiras e F para as falsas: ( ) Para saber quantos cabelereiros têm cadastrados, executamos o comando SELECT COUNT(Id) FROM cabelereiro. ( ) Para saber a idade média dos cabelereiros cadastrados, executamos o comando SELECT AVG(Idade) as idade_media FROM cabelereiro. ( ) Para saber o valor total da agenda por cabelereiro, executamos o comando SELECT a.Id_cabelereiro, c.Nome, SUM(a.valor) as valor_total FROM agenda a INNER JOIN cabelereiro c ON a.Id_cabelereiro = c.id. ( ) Para listar todas as agendas do mês de julho/2018, executamos o comando SELECT * FROM agenda WHERE Data_agenda BETWEEN ‘2018-07-01' and ‘2018-07-31'. Assinale a alternativa que apresenta a sequência CORRETA: A F - F - V - V. B V - F - F - F. C V - V - V - V. D V - F - F - V. Analise as tabelas a seguir: Tabela: VENDEDOR ID NOME 1 JOSÉ DE ASSIS 2 PEDRO LOBATO 3 MARTA MEIRELES 4 GEISA FONTANA Tabela: VEICULOS 5 18/04/2023, 14:53 Avaliação II - Individual about:blank 4/7 ID DESCRICAO PLACA ID_VENDEDOR 1 GOL AAA-1230 1 2 HB20 BBB-5555 2 3 HB20 CCC-3333 3 4 S10 DDD-1010 4 A partir das tabelas apresentadas e sabendo que na tabela VEICULOS o campo ID_VENDEDOR referencia o campo ID da tabela VENDEDOR, analise o comando SQL a seguir e assinale o resultado que a execução irá retornar: SELECT VEICULOS.DESCRICAO, VEICULOS.PLACA, VENDEDOR.NOME FROM VEICULOS INNER JOIN VENDEDOR ON VEICULOS.ID_VENDEDOR = VENDEDOR.ID WHERE VEICULOS.ID_VENDEDOR = 3; A UNO / UUU-0909 / CLEITON PIRES. B HB20 / CCC-3333 / MARTA MEIRELES. C HB20 / BBB-5555 / PEDRO LOBATO. D S10 / DDD-1010 / GEISA FONTANA. A cláusula JOIN é usada para combinar linhas de duas ou mais tabelas, baseadas nas relações existentes entre elas. Referente à extração de dados utilizando JOINs, analise os comandos de SELECT a seguir: COMANDO 1: SELECT p.id as 'Id.Produto', p.nome as 'Nome Produto', AVG(m.valor_unitario) as 'Valor Médio' FROM tbl_produtos p INNER JOIN tbl_movimentos m ON p.id = m.id_produto GROUP BY p.id, p.nome; COMANDO 2: SELECT p.id as 'Id.Produto', p.nome as 'Nome Produto', AVG(m.valor_unitario) as 'Valor Médio' FROM tbl_produtos p LEFT JOIN tbl_movimentos m ON p.id = m.id_produto GROUP BY p.id, p.nome; Considerando os comandos apresentados, classifique V para as sentenças verdadeiras e F para as falsas: ( ) A função AVG presente nos dois comandos retorna a média dos valores de um grupo. Neste comando irá agrupar os campos “id” e “nome” do produto para retornar a média dos valores unitários. 6 18/04/2023, 14:53 Avaliação II - Individual about:blank 5/7 ( ) O comando 1 apresenta apenas os registros da tabela “tbl_produtos” onde há pelo menos um registro na tabela “tbl_movimentos” correspondente. ( ) O comando 2 apresenta apenas os registros da tabela “tbl_produtos” onde há pelo menos um registro na tabela “tbl_movimentos” correspondente, sendo que a função AVG irá trazer apenas os registros que apresenta valores. ( ) O comando 2 traz todos os produtos da tabela “tbl_produtos”, sendo que os produtos que não apresentam um correspondente na tabela “tbl_movimentos” apresentam valor zero e não nulo. Assinale a alternativa que apresenta a sequência CORRETA: Fonte: w3schools. SQL Joins. Disponível em: https://goo.gl/MmeDJ4. Acesso em: 9 mar. 2023. A V - F - F - F. B V - V - F - F. C F - F - V - V. D V - F - V - F. Uma cláusula JOIN em SQL, correspondente a uma operaçãode junção em álgebra relacional, combina colunas de uma ou mais tabelas em um banco de dados relacional. Ela cria um conjunto que pode ser salvo como uma tabela ou usado da forma como está. A partir do exposto, assinale a alternativa CORRETA que apresenta o tipo de JOIN em que os retornos de todas as linhas dos dois lados do JOIN são selecionadas: Fonte: PHILEMON, D. SQL JOIN: Aprenda INNER, LEFT, RIGHT, FULL e CROSS. Alura. Disponível em: https://www.alura.com.br/artigos/join-em-sql. Acesso em: 17 ago. 2022. A LEFT JOIN. B INNER JOIN. C FULL JOIN. D JET JOIN. Um tipo de dados define o tipo de valor que uma coluna pode conter, sendo estes inteiros, caractere, monetários, temporal (data e hora), binários e assim por diante. Cada coluna em uma tabela deve ter um nome e um tipo de dado. Sobre os tipos de dados, assinale a alternativa CORRETA: Fonte: SQL Data Types for MySQL, SQL Server, and MS Access. Disponível em: https://goo.gl/WV9R7b. Acesso em: 2 abr. 2018. A DATETIME armazena a combinação de data e hora. Também temos os tipos DATE para armazenar apenas data e TIME para armazenar apenas horas. B BOOLEAN não é um tipo de dado válido para o banco de dados. Utilizamos sempre um inteiro com zero ou um como Boolean. 7 8 18/04/2023, 14:53 Avaliação II - Individual about:blank 6/7 C DECIMAL permite campos numéricos com decimal fixo, mas não permite informar o número máximo de dígitos nos parênteses. D CHAR e VARCHAR podem conter apenas letras. Não é permitido armazenar números ou caracteres especiais neste tipo de campo. Analise o comando SQL a seguir: SELECT c.id as id_cliente, c.nome as nome_cliente, SUM(v.valor_total) as valor_venda FROM vendas v INNER JOIN clientes c ON v.id_cliente = c.cliente WHERE v.data_venda BETWEEN ‘2018-09-01' and ‘2018-09-30’ GROUP BY c.id, c.nome; Considerando o exposto, analise as sentenças a seguir: I- O comando SELECT retorna o valor de todas as vendas relacionadas aos clientes, agrupando a soma das venda por “id” e “nome” do cliente. II- O comando SELECT retorna o valor de vendas agrupados por clientes e apresenta valor nulo para os clientes que não tiveram vendas no período. III- O comando SELECT retorna apenas as vendas que ocorreram no mês de setembro de 2018. IV- O comando SELECT retorna a média do valor de venda, agrupando o resultado por cliente. Assinale a alternativa que apresenta a sequência CORRETA: A I e II, apenas. B I, II, III e IV. C I e III, apenas. D I e IV, apenas. Para que seja possível efetuar consultas SQL utilizando mais de uma tabela, é necessário trabalharmos a cláusula FROM do nosso comando SELECT. Para isto, podemos informar as tabelas dentro da cláusula FROM separando elas por vírgula e na cláusula WHERE ligando as tabelas em suas respectivas chaves primárias e estrangeiras. Da mesma forma, a cláusula JOIN é usada para combinar linhas de 2 ou mais tabelas, baseadas nas relações existentes entre elas. Referente à cláusula JOIN, analise as sentenças a seguir: I- INNER JOIN retorna todos os registros correspondentes tanto da direita como da esquerda, trazendo NULO quando o registro correspondente não existir. II- LEFT JOIN retorna todos os registros da esquerda e seus correspondentes da direita. Quando o correspondente da direita não existir, seus registros serão apresentados como NULO por padrão. III- INNER JOIN retorna todos os registros da esquerda, apenas se houver o seu correspondente na direita, ou seja, irá apresentar apenas os registros correspondentes. IV- RIGHT JOIN não é um comando válido em um banco de dados MySQL Server. Assinale a alternativa CORRETA: A I e IV, apenas. B I e III, apenas. C II e III, apenas. D I e II, apenas. 9 10 18/04/2023, 14:53 Avaliação II - Individual about:blank 7/7 Imprimir
Compartilhar