Baixe o app para aproveitar ainda mais
Prévia do material em texto
BANCO DE DADOS 8a aula Lupa Vídeo PPT MP3 Exercício: CCT0782_EX_A8__V1 06/05/2019 (Finaliz.) Aluno(a): Disciplina: CCT0782 - BANCO DE DADOS 1a Questão Considere as seguintes tabelas de um banco de dados: 1) Fornecedor (cod_fornec, nome_fornec, telefone, cidade, UF) 2) Estado (UF, nome_estado) A expressão SQL que obtém os nomes dos estados para os quais não há fornecedores cadastrados e: SELECT E.nome_estado FROM Estado AS E, FROM Fornecedor AS F WHERE E.nome_estado = F.UF; SELECT E.UF FROM Estado AS E WHERE E.nome_estado NOT IN (SELECT F.UF FROM Fornecedor AS F); SELECT E.nome_estado FROM Estado AS E WHERE E.UF IN (SELECT F.UF FROM Fornecedor AS F); SELECT E.nome_estado FROM Estado AS E, FROM Fornecedor AS F WHERE E.UF = F.UF; SELECT E.nome_estado FROM Estado AS E WHERE E.UF NOT IN (SELECT F.UF FROM Fornecedor AS F); Gabarito Coment. 2a Questão Sabendo-se que existem dados de TCC cadastrados com datas de defesa que variam de 20/11/2012 até o dia de hoje, assinale qual das alternativas abaixo retornaria o mesmo resultado que o comando "SELECT * FROM TCC WHERE DTDEFESA IN ('21/11/2013', '22/11/2014');": SELECT * FROM TCC WHERE DTDEFESA > '21/11/2013' AND < '22/11/2014'; SELECT * FROM TCC WHERE DTDEFESA BETWEEN ('21/11/2013'; '22/11/2014'); SELECT * FROM TCC WHERE DTDEFESA => '21/11/2013' AND <= '22/11/2014'; SELECT * FROM TCC WHERE DTDEFESA BETWEEN '21/11/2013' AND '22/11/2014'; SELECT * FROM TCC WHERE DTDEFESA = '21/11/2013' AND '22/11/2014'; 3a Questão A linguagem de banco de dados que é aceita em quase todos os Sistemas de Gerenciamento de Banco de Dados (SGBDs) é a SQL. Dessa forma, utilizando esta linguagem para conseguir filtrar valores resultantes de expressões agregadas, deve-se adicionar ao comando SQL a cláusula: HAVING SUM AVG SELECT WHERE Explicação: Having: A cláusula having só é usada quando se deseja especificar um critério de pesquisa para um grupo ou uma agregação. HAVING pode ser usado somente com a instrução SELECT. HAVING é usado normalmente em uma cláusula GROUP BY. SUM: A função sum(x) retorna a soma da coluna x. Where: A cláusula Where estabelece uma condição que a linha deverá obedecer para que faça parte do conjunto resposta da consulta. No caso apenas retornam as linhas cujo deste da condição de como resposta verdadeiro. Select: Comando utilizado para recuperação dos dados de uma ou mais tabelas. AVG: A função avg(x) retorna o valor médio da coluna x. Gabarito Coment. 4a Questão Assinale a opção que exibirá para cada valor armazenado na coluna chamada C1 da tabela T1 a quantidade de vezes que este valor aparece repetido. Select C1, from T1 group by count(*) Select C1, count(C1) from T1 group by C1 Select C1, count(C1) from T1 having count(C1) Select C1, sum(C1) from T1 group by C1 Select C1 from T1 Explicação: Analisando a proposta da consulta: - Para obter a quantidade de vezes que um valor aparece repetido precisamos trabalhar com: - Função count(x) ¿ retorna o número de valores não nuos da coluna x. - Group by ¿ permite agruparmos nossos dados, produzindo uma linha sumarizada para cada grupo de linhas selecionado. Sendo assim, o commando correto é: Select C1, count(C1) from T1 group by C1 Gabarito Coment. 5a Questão - Considere o banco de dados relacional de uma clínica médica, no qual as chaves primárias (incrementada automaticamente) e estrangeiras estão sublinhadas. *Obs. A numeração automática iniciará com 1. PACIENTE (id_pac, nome_pac, sexo, fone_pac) ESPECIALIDADE (id_espec, nome_espec) MEDICO (id_med, nome_med, fone_med, id_espec) CONSULTA (id_cons, dt_cons, vl_cons, id_pac, id_med) Dê o comando correspondente de Selecionar o maior valor de consulta. Select MAX(vl_cons) From CONSULTA Select vl_cons From CONSULTA Select SUM(vl_cons) From CONSULTA Select * From CONSULTA Select MIN(vl_cons) From CONSULTA 6a Questão Em SQL, as funções de grupo opeam sobre conjuntos de linhas. Marque a opção correta: AVG - calcular a média aritmética. MIN - somar um grupo de valores. MAX - retornar o menor valor dentre um grupo de valores. SUM - contar o número de linhas. COUNT - retornar o maior valor dentre um grupo de valores. Explicação: AVG(x) - Retorna o valor médio da coluna x. SUM(x) - Retorna a soma da coluna x. MAX(x) - Retorna o valor máximo da coluna x. MIN(x) - Retorna o valor mínimo da coluna x. COUNT(x) - Retorna o número de valores não nulos da coluna x. 7a Questão Considere o esquema de uma empresa conforme segue: Func (cod_func, nome, dta_nasc, salario, nro_depto, cod_superv) ; Depto (nro_depto, nome) ; Projeto (cod_proj, nome, duracao, nro_depto) ; Participa (cod_proj, cod_func, horas_trab). Marque a alternativa que contém o comando em SQL para recuperar o nome e o salário dos funcionários do departamento 5, com salário na faixa entre 1000 e 2000. SELECT NOME, SALARIO FROM FUNC WHERE NRO_DEPTO = 5 OR SALARIO BETWEEN 1000 AND 2000; SELECT NOME, SALARIO FROM FUNC WHERE SALARIO BETWEEN 1000 AND 2000; SELECT NOME, SALARIO FROM FUNC WHERE NRO_DEPTO = 5; SELECT NOME, SALARIO FROM FUNC WHERE SALARIO = 1000 AND NRO_DEPTO BETWEEN 1 AND 5; SELECT NOME, SALARIO FROM FUNC WHERE NRO_DEPTO = 5 AND SALARIO BETWEEN 1000 AND 2000; Explicação: SELECT NOME, SALARIO FROM FUNC WHERE NRO_DEPTO = 5 AND SALARIO BETWEEN 1000 AND 2000; 8a Questão Sobre os tipos de funções de um SGBD, marque a opção correta: MIN realiza da função de calcular a média aritmética. SUM realiza da função de contar o número de linhas. AVG realiza da função de somar um grupo de valores. COUNT realiza da função de retornar o menor valor dentre um grupo de valores. MAX realiza da função de retornar o maior valor dentre um grupo de valores.
Compartilhar