Prévia do material em texto
Prova Impressa
GABARITO | Avaliação II - Individual (Cod.:1598152)
Peso da Avaliação 1,50
Prova 116891150
Qtd. de Questões 10
Acertos/Erros 9/0
Canceladas 1
Nota 10,00
Subconsultas são expressões aninhadas de SELECT – FROM – WHERE utilizadas dentro de outra consulta. Este
recurso é utilizado para, por exemplo, realizar testes de participação de conjuntos, fazer comparação e determinar
a cardinalidade dos conjuntos. Com relação às subconsultas, analise as sentenças a seguir:
I- Subconsultas não podem ser utilizadas na cláusula WHERE para limitar valores.
II- Não conseguimos utilizar subconsultas dentro da cláusula FROM, sendo que este é o local onde informamos
as tabelas do banco de dados.
III- Podemos criar consultas de consultas, sendo que o SQL permite que uma subconsulta seja informada dentro
da cláusula FROM e seu resultado trabalhado como uma tabela que pode se relacionar com outras tabelas ou até
outra subconsulta.
IV- Não é possível utilizar subconsultas para trazer colunas dentro da cláusula SELECT, sendo que uma
subconsulta pode trazer mais de uma coluna e mais de uma linha como resultado, apresentando erro pelo servidor.
Assinale a alternativa CORRETA:
A I, II e III, apenas.
B I e IV, apenas.
C III, apenas.
D I e II, apenas.
A cláusula JOIN é usada para combinar linhas de 2 ou mais tabelas, baseadas nas relações existentes entre elas.
Além dos JOINs para combinar tabelas, a linguagem SQL permite funções de agregação que nos ajuda com a
VOLTAR
A+Aumentar, FonteAlterar modo de visualização
1
2
análise dos dados, apresentando de forma resumida as informações de uma consulta. Referente à extração de
dados utilizando JOINs e funções de agregação, analise o comando SELECT a seguir:
SELECT p.id, p.nome,
AVG(m.valor_unitario) as media_valor
FROM produto p INNER JOIN movimento mON p.id = m.id_produto GROUP BY p.id, p.nome.
Com relação ao comando anterior, classifique V para as sentenças verdadeiras e F para as falsas:
( ) A função AVG nos retorna a média dos valores de um grupo.
( ) Esta consulta está agrupando o “id” e “nome” do produto para retornar a média dos valores unitários.
( ) A função AVG nos retorna à soma dos valores de um grupo.
( ) A cláusula INNER JOIN presente no comando de consulta irá retornar todos os produtos, mesmo os que não
apresentam um registro correspondente na tabela de movimento.
Assinale a alternativa que apresenta a sequência CORRETA:
A V - F - V - F.
B F - V - V - F.
C V - V - F - F.
D V - V - V- F.
Atenção: Esta questão foi cancelada, porém a pontuação foi considerada.
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
);
CREATE TABLE agenda (
Id serial PRIMARY KEY,
Data_agenda TIMESTAMP NOT NULL,
3
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 V - V - V - V.
B F - F - V - V.
C V - F - F - V.
D V - F - F - F.
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'
4
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.
( ) 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 - V - F.
B V - V - F - F.
C F - F - V - V.
D V - F - F - F.
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.
5
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 II, apenas.
B II e III, apenas.
C I e III, apenas.
D I e IV, apenas.
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.
6
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, II, III e IV.
B I e IV, apenas.
C I e II, apenas.
D I e III, apenas.
Os bancos de dados são fundamentais para a gestão de informações em diversas aplicações. A linguagem SQL
(Structured Query Language) é amplamente utilizada para interagir com bancos de dados, permitindo a
manipulação e recuperação de dados.Para compreender melhor como funciona o SQL, considere a tabela a
seguir, que contém informações sobre funcionários de uma empresa.
Tabela: Funcionarios
ID Nome Cargo Salario DataContratacao
1 Ana Silva Gerente 8000.00 2020-01-15
2 João Santos Analista 5000.00 2019-03-10
3 Maria Oliveira Desenvolvedora 6000.00 2021-07-20
4 Carlos Lima Analista 4500.00 2018-11-05
5 Fernanda Costa Estagiária 2000.00 2023-05-01
Com base na tabela, qual comando SQL a seguir retornará o nome e o salário de todos os funcionários cujo
salário é superior a R$ 5000,00?
A SELECT * FROM Funcionarios WHERE Salario > 5000;
B SELECT Nome, Salario FROM Funcionarios WHERE Salario > 5000;
C SELECT Nome, Salario FROM Funcionarios WHERE Salario 5000 ORDER BY Salario DESC;
E SELECT Nome, Salario FROM Funcionarios WHERE Salario = 6000;
O SQL (Structured Query Language) é a linguagem-padrão utilizada para gerenciar e manipular dados em bancos
de dados relacionais. Um dos principais comandos do SQL é o INSERT, que permite incluir novos registros em
uma tabela existente.
Analise os dados do quadro de produtos a seguir:
id nome categoria preco estoque
1 Notebook Eletrônicos 2999.99 50
2 Smartphone Eletrônicos 1499.99 100
3 Cadeira Mobiliário 299.99 30
4 Teclado Eletrônicos 99.99 80
Agora, como base no quadro, considere a seguinte situação:
A empresa precisa adicionar um novo produto ao quadro Produtos. O produto tem as seguintes informações:
nome 'Impressora', categoria 'Eletrônicos', preço 499.99 e estoque 20 unidades.
Nas alternativas a seguir, qual possui o comando SQL que deve ser utilizado para inserir esse novo produto?
A INSERT INTO Produtos VALUES (6, 'Impressora', 'Eletrônicos', 499.99, 20);
B INSERT INTO Produtos (nome, categoria, preco, estoque) VALUES ('Impressora', 'Eletrônicos', 499.99,
'20');
C INSERT INTO Produtos SET nome = 'Impressora', categoria = 'Eletrônicos', preco = 499.99, estoque = 20;
D INSERT INTO Produtos (id, nome, categoria, preco, estoque) VALUES (5, 'Impressora', 'Eletrônicos',
499.99, 20);
E INSERT Produtos (nome, categoria, preco, estoque) VALUES ('Impressora', 'Eletrônicos', 499.99, 20);
8
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 F - V - F - V.
B V - V - F - F.
C V - F - V - F.
D V - V - V - V.
Analise as tabelas a seguir:
Tabela: VENDEDOR
IDNOME
1 JOSÉ DE ASSIS
2 PEDRO LOBATO
3 MARTA MEIRELES
4 GEISA FONTANA
Tabela: VEICULOS
IDDESCRICAOPLACA ID_VENDEDOR
9
10
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 HB20 / CCC-3333 / MARTA MEIRELES.
B HB20 / BBB-5555 / PEDRO LOBATO.
C S10 / DDD-1010 / GEISA FONTANA.
D UNO / UUU-0909 / CLEITON PIRES.
Imprimir