Baixe o app para aproveitar ainda mais
Prévia do material em texto
08/06/2023, 17:04 Colaborar - Av - Subst. 2 - Programação e Desenvolvimento de Banco de Dados - A https://colaboraread.com.br/aluno/avaliacao/index/3293590903?atividadeDisciplinaId=14373829 1/4 Programação e Desenvolvimento de Banco … Av - Subst. 2 - Programação e Desenvolvimento de Banco de Dados - A (/notific Informações Adicionais Período: 06/06/2023 00:00 à 10/06/2023 23:59 Situação: Cadastrado Tentativas: 3 / 3 Pontuação: 2000 Protocolo: 869670300 Avaliar Material 1) a) b) A rede CinemaSA lançou uma nova campanha de venda de ingressos para o filme "Buscando quem foi". A campanha consiste em: Quem já assistiu o filme ao comprar uma nova entrada do tipo INTEIRA para um amigo, parente ou acompanhante, ganha inteiramente grátis um novo ingresso. Para medir o investimento (em ingressos grátis) e quantidade de possíveis clientes para escalonar Salas/Lugares/Seções necessárias, solicitou se um relatório para a equipe de T.I. com a quantidade de ingressos vendidos para este filme anteriormente a campanha, separados por tipo de ingresso. Onde foi desenvolvido um único script que retornou todos os resultados em uma única linha. Observe que a tabela de VENDAS possui os campos: id_venda, id_filme, id_secao, id_produto e id_cliente todos do tipo bigint(12) e não aceitam valores nulos e o campo id_venda é a chave primaria da tabela. Sabendo que o filme "Buscando quem foi" é o filme de ID_filme 99 e os ingressos são vendidos em produtos identificados pelo campo ID_produto, onde 1 = "Inteiro", 2 = "1/2 Estudante/Professor", 3 = "1/2 Aposentado", 4 = "Isento/Crianças". Ressalta-se que os ingressos do tipo Isento/Crianças não participam da promoção. Tot_Ingr. Inteiro Est_Prof Apos. Isento_Crianças Assinale a alternativa que apresenta o Script correto para o problema apresentado no texto e tabela. Alternativas: SELECT (SELECT COUNT(*) FROM VENDAS WHERE id_filme = 99) AS TOT_INGR, (SELECT COUNT(id_produto) FROM VENDAS WHERE id_produto <> 1 AND id_filme = 99) AS INTEIRO, (SELECT COUNT(id_produto) FROM VENDAS WHERE id_produto <> 2 AND id_filme = 99) AS EST_PROF, (SELECT COUNT(id_produto) FROM VENDAS WHERE id_produto <> 3 AND id_filme = 99) AS APOS, (SELECT COUNT(id_produto) FROM VENDAS WHERE id_produto <> 4 AND id_filme = 99) AS ISENTO_CRIANÇAS FROM VENDAS WHERE id_filme = 99 GROUP BY TOT_INGR; SELECT (SELECT COUNT(*) FROM VENDAS WHERE id_filme = 99) AS TOT_INGR, (SELECT COUNT(id_produto) FROM VENDAS WHERE id_produto = 4 AND id_filme = 99) AS INTEIRO, (SELECT COUNT(id_produto) FROM VENDAS WHERE id_produto = 3 AND id_filme = 99) AS EST_PROF, https://colaboraread.com.br/aluno/timeline/index/3293590903?ofertaDisciplinaId=1970312 https://colaboraread.com.br/notificacao/index javascript:void(0); 08/06/2023, 17:04 Colaborar - Av - Subst. 2 - Programação e Desenvolvimento de Banco de Dados - A https://colaboraread.com.br/aluno/avaliacao/index/3293590903?atividadeDisciplinaId=14373829 2/4 c) d) e) 2) a) b) c) d) (SELECT COUNT(id_produto) FROM VENDAS WHERE id_produto = 2 AND id_filme = 99) AS APOS, (SELECT COUNT(id_produto) FROM VENDAS WHERE id_produto = 1 AND id_filme = 99) AS ISENTO_CRIANÇAS FROM VENDAS WHERE id_filme = 99 GROUP BY TOT_INGR; SELECT (SELECT COUNT(*) FROM VENDAS WHERE id_filme = 99) AS TOT_INGR, (SELECT COUNT(id_produto) FROM VENDAS WHERE id_produto = 1 AND id_filme = 99) AS INTEIRO, (SELECT COUNT(id_produto) FROM VENDAS WHERE id_produto = 2 AND id_filme = 99) AS EST_PROF, (SELECT COUNT(id_produto) FROM VENDAS WHERE id_produto = 3 AND id_filme = 99) AS APOS, (SELECT COUNT(id_produto) FROM VENDAS WHERE id_produto = 4 AND id_filme = 99) AS ISENTO_CRIANÇAS FROM VENDAS WHERE id_filme = 99 GROUP BY TOT_INGR; Alternativa assinalada SELECT (SELECT COUNT(*) FROM VENDAS WHERE id_filme Not In 99) AS TOT_INGR, (SELECT COUNT(id_produto) FROM VENDAS WHERE id_produto = 1 AND id_filme = 99) AS INTEIRO, (SELECT COUNT(id_produto) FROM VENDAS WHERE id_produto = 2 AND id_filme = 99) AS EST_PROF, (SELECT COUNT(id_produto) FROM VENDAS WHERE id_produto = 3 AND id_filme = 99) AS APOS, (SELECT COUNT(id_produto) FROM VENDAS WHERE id_produto = 4 AND id_filme = 99) AS ISENTO_CRIANÇAS FROM VENDAS WHERE id_filme Not in 99 GROUP BY TOT_INGR; SELECT (SELECT COUNT(*) FROM VENDAS WHERE id_filme = 99) AS TOT_INGR, (SELECT COUNT(id_produto) FROM VENDAS WHERE id_produto = 1 AND id_filme <= 99) AS INTEIRO, (SELECT COUNT(id_produto) FROM VENDAS WHERE id_produto = 2 AND id_filme <= 99) AS EST_PROF, (SELECT COUNT(id_produto) FROM VENDAS WHERE id_produto = 3 AND id_filme <= 99) AS APOS, (SELECT COUNT(id_produto) FROM VENDAS WHERE id_produto = 4 AND id_filme <= 99) AS ISENTO_CRIANÇAS FROM VENDAS WHERE id_filme = 99 GROUP BY TOT_INGR; As indústrias TelaVisão após o sucesso da copa do mundo vai negociar a compra de matérias primas para retomar a produção de televisores. Com a recente alta do dólar os sócios definiram investir em compra de materiais a Vista, para melhorar o preço dos mesmos na aquisição, para evitar que os produtos ficassem parados, definiram produzir somente televisores para o final do ano, e que tiveram seu pagamentos feitos em dinheiros pelos lojistas, com isso ela espera vender mais e receber mais rápido ainda. Imediatamente a secretária solicitou a equipe de T.I. a listagem de produtos que atendam as colocações dos sócios, Sabendo que a tabela de cadastro de PRODUTOS tem o campo idproduto que é numérico, com a mesma estrutura do campo idproduto da tabela de VENDAS e que o a tabela de VENDAS tem o campo idtipo, idcategoria, idpgtotp todos numéricos, e que os códigos idtipo 2 = Eletrônicos, idcategoria = 1 Televisores, idpgtotp 1 = dinheiro. Sabendo que será necessário vários filtros para relacionar corretamente as condições desta pesquisa, Avalie as alternativas abaixo no que concerne o correto Script para trazer os resultados esperados Assinale a alternativa que apresenta o correto Script SQL solicitado. Alternativas: SELECT nome FROM PRODUTOS WHERE idproduto NOT IN (SELECT idproduto FROM VENDAS WHERE idtipo <= 2 AND idcategoria = 1 AND idpgtotp = 1); SELECT nome FROM PRODUTOS WHERE idproduto IN (SELECT idproduto FROM VENDAS WHERE idtipo <> 2 AND idcategoria = 1 AND idpgtotp = 1); SELECT nome FROM PRODUTOS WHERE idproduto NOT IN (SELECT idproduto FROM VENDAS WHERE idtipo >< 2 AND idcategoria = 1 AND idpgtotp = 1); SELECT nome FROM PRODUTOS WHERE idproduto NOT IN (SELECT idproduto FROM VENDAS WHERE idtipo >= 2 AND idcategoria = 1 AND idpgtotp = 1); 08/06/2023, 17:04 Colaborar - Av - Subst. 2 - Programação e Desenvolvimento de Banco de Dados - A https://colaboraread.com.br/aluno/avaliacao/index/3293590903?atividadeDisciplinaId=14373829 3/4 e) 3) a) b) c) d) e) 4) a) b) c) d) e) SELECT nome FROM PRODUTOS WHERE idproduto IN (SELECT idproduto FROM VENDAS WHERE idtipo = 2 AND idcategoria = 1 AND idpgtotp = 1); Alternativa assinalada A confecções Encobertos lançou a coleção 2019, com seus mais de 50.000 produtos. Pensando na agilidade do processo de compras, a equipe de T.I. resolveu gerar um índice da tabela PRODUTOS sobre o campo NOME com o intuito que o site demonstra-se rapidamente os produtos disponíveis para a coleção daquele ano. Sabendo que a tabela de PRODUTOS tem diversos campos mas deve-se indexar o campo Nome_produto, qual a correta instrução a ser desenvolvida pela T.I. para resolver a situação a presentada. Assinale a alternativa que apresenta o correto Script necessário. Alternativas: CREATE TABLE IDX_Produto ON PRODUTO(Nome_produto); CREATE TABLE IDX_Produto ON PRODUTOS(Nome_produto); Alternativa assinalada CREATE INDEX IDX_Produto ON PRODUTO(Nome_produto); CREATE INDEX IDX_Produto ON PRODUTOS(Nome_produto); CREATE TABLE IDX_Produto ON PRODUTOS(Nomeproduto); A F.B.B. (Federal Box Bank) S/A, está passando por auditoria devido a acusações de desvio de valores do sistema "Meu Pedacinho de Chão". Sabendo que todos os projetos foram armazenados no banco de dados, e visando identificar precisamente possíveis fraudes. A T.I. separou o processoem 2 Fases. Sendo a 1º Fase dividida em 2 Passos, 1º Passo como vai fazer uma busca recursiva no banco de dados, precisa criar um FULLTEXT na tabela MPCPROJETOS, depois o 2º Passo vai realizar a busca recursiva na tabela MPCPROJETOS onde vai filtrar os projetos que apresentam a palavra "ALVENARIA" (pois não é mais aceito construções em madeira), e depois "CIMENTO" (pois toda alvenaria precisa de cimento) a 1º Fase vai retornar os projetos que estão OK. E na 2º fase vai utilizar os projetos identificados na 1ª fase para trazer os restantes, que serão alvo de um pente fino. Com base nas informações passadas acima e na linguagem S.Q.L. avalie as alternativas abaixo identificando o Script correto para a CRIAÇÃO do FULLTEXT na tabela MPCPROJETOS e as duas consultas necessárias para trazer os projetos previamente corretos para o trabalho na 2º fase. Assinale a alternativa que apresenta os Scripts necessários. Alternativas: ALTER TABLE MPCPROJETOS ADD FULLTEXT(texto); SELECT Codprojeto FROM MPCPROJETOS WHERE MATCH(palavra) AGAINST("alvenaria"); SELECT Codprojeto FROM MPCPROJETOS WHERE MATCH(palavra) AGAINST("cimento"); ALTER TABLE MPCPROJETOS IMPUT FULLTEXT(texto); SELECT Codprojeto FROM MPCPROJETOS WHERE FIND(texto) AGAINST("alvenaria"); SELECT Codprojeto FROM MPCPROJETOS WHERE FIND(texto) AGAINST("cimento"); ALTER TABLE MPCPROJETOS INSER FULLTEXT(texto); SELECT Codprojeto FROM MPCPROJETOS WHERE FIND(texto) AGAINST("alvenaria"); SELECT Codprojeto FROM MPCPROJETOS WHERE MATCH(texto) AGAINST("cimento"); ALTER TABLE MPCPROJETOS ADD FULLTEXT(texto); SELECT Codprojeto FROM MPCPROJETOS WHERE MATCH(texto) AGAINST("alvenaria"); SELECT Codprojeto FROM MPCPROJETOS WHERE MATCH(texto) AGAINST("cimento"); Alternativa assinalada ALTER TABLE MPCPROJETOS INSERT FULLTEXT(texto); SELECT Codprojeto FROM MPCPROJETOS WHERE MATCH(texto) AGAINST("alvenaria"); SELECT Codprojeto FROM MPCPROJETOS WHERE FIND(texto) AGAINST("cimento"); 08/06/2023, 17:04 Colaborar - Av - Subst. 2 - Programação e Desenvolvimento de Banco de Dados - A https://colaboraread.com.br/aluno/avaliacao/index/3293590903?atividadeDisciplinaId=14373829 4/4 5) a) b) c) d) e) Date (2012) define que a sintaxe SQL para se criar um procedimento armazenado e´ definida por meio da palavra-chave PROCEDURE. Para essa procedure ser estruturada em um banco de dados deve ser utilizado o comando SQL representado a seguir: CREATE PROCEDURE proc_MediaExame (var_DisciplinaId int) SELECT AVG(fn_media(NotaP1, NotaP2)) AS "Me´dia Exame" FROM Notas WHERE DisciplinaId = var_DisciplinaId AND (fn_media(NotaP1, NotaP2) >= 4.0 AND fn_media(NotaP1, NotaP2) <= 6.9); A partir da procedure definida acima, pode-se afirmar que: I. (var_DisciplinaIdint): cria uma varia´vel que faz refere^ncia a coluna Id da tabela Disciplina, e esta e´ do tipo inteiro. Essa varia´vel e´ utilizada na chamada do procedimento armazenado. II. SELECT AVG(fn_media(NotaP1, NotaP2)): efetua a selec¸a~o da me´dia geral da func¸a~o criada com as me´dias de cada um dos alunos. III. WHERE DisiciplinId = var_DisciplinaId: impo~e uma condic¸a~o que o valor disponi´vel no campo “DisciplinaId” na tabela “Notas”, seja igual ao encontrado na varia´vel “var_DisciplinaId”. IV. (fn_media(NotaP1, NotaP2) >= 4.0 AND fn_media(NotaP1, NotaP2) <= 6.9)= e´ a condic¸a~o de selec¸a~o dos alunos que esta~o de exame, com notas entre 4,1 e 6,9 (inclusive). Considerando o que foi observado, pode-se afirmar que são verdadeiras apenas as alternativas: Alternativas: I, II e III. Alternativa assinalada I, III e IV. I e II I e III III e IV
Compartilhar