Prévia do material em texto
Prova Impressa
GABARITO | Avaliação II - Individual (Cod.:1020738)
Peso da Avaliação 2,00
Prova 95918370
Qtd. de Questões 10
Acertos/Erros 10/0
Nota 10,00
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 III, apenas.
B I, II, III e IV.
C I e II, apenas.
D I e IV, 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
1
2
Avaliação II - Individual https://ava2.uniasselvi.com.br/subject/grades-and-tests/answer-book/e...
1 of 7 31/03/2025, 20:55
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 FROM Funcionarios WHERE Salario > 5000 ORDER BY Salario DESC;
C SELECT Nome, Salario FROM Funcionarios WHERE Salario 5000;
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 DECIMAL permite campos numéricos com decimal fixo, mas não permite informar o número
máximo de dígitos nos parênteses.
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.
C 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.
D CHAR e VARCHAR podem conter apenas letras. Não é permitido armazenar números ou
caracteres especiais neste tipo de campo.
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:
3
4
Avaliação II - Individual https://ava2.uniasselvi.com.br/subject/grades-and-tests/answer-book/e...
2 of 7 31/03/2025, 20:55
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 V - V - F - F.
B V - V - V - F.
C V - F - V - F.
D F - F - V - 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
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
5
Avaliação II - Individual https://ava2.uniasselvi.com.br/subject/grades-and-tests/answer-book/e...
3 of 7 31/03/2025, 20:55
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 S10 / DDD-1010 / GEISA FONTANA.
B UNO / UUU-0909 / CLEITON PIRES.
C HB20 / CCC-3333 / MARTA MEIRELES.
D HB20 / BBB-5555 / PEDRO LOBATO.
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.
( ) O comando 1 apresenta apenas os registros da tabela “tbl_produtos” onde há pelo menos um
registro na tabela “tbl_movimentos” correspondente.
6
Avaliação II - Individual https://ava2.uniasselvi.com.br/subject/grades-and-tests/answer-book/e...
4 of 7 31/03/2025, 20:55
( ) 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 V - F - V - F.
D F - F - V - V.
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 noquadro, 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 SET nome = 'Impressora', categoria = 'Eletrônicos', preco = 499.99,
estoque = 20;
C INSERT Produtos (nome, categoria, preco, estoque) VALUES ('Impressora', 'Eletrônicos',
499.99, 20);
D INSERT INTO Produtos (nome, categoria, preco, estoque) VALUES ('Impressora', 'Eletrônicos',
499.99, '20');
E INSERT INTO Produtos (id, nome, categoria, preco, estoque) VALUES (5, 'Impressora',
'Eletrônicos', 499.99, 20);
7
Avaliação II - Individual https://ava2.uniasselvi.com.br/subject/grades-and-tests/answer-book/e...
5 of 7 31/03/2025, 20:55
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 III, apenas.
B I, II e III, apenas.
C I e IV, 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 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 V - V - F - F.
8
9
Avaliação II - Individual https://ava2.uniasselvi.com.br/subject/grades-and-tests/answer-book/e...
6 of 7 31/03/2025, 20:55
C V - V - V- F.
D F - V - V - F.
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.
B V - V - F - F.
C V - F - V - F.
D F - V - F - V.
10
Avaliação II - Individual https://ava2.uniasselvi.com.br/subject/grades-and-tests/answer-book/e...
7 of 7 31/03/2025, 20:55