Você está na página 1de 37

Lista de

Exercícios
MYSQL

Professor Celso Barreto


Exercicios teórico
1. Qual é a linguagem de consulta estruturada utilizada no MySQL?
a) SQL
b) NoSQL
c) PHP
d) Python
e) Java
Exercicios teórico
2. Qual é a diferença entre um banco de dados relacional e um não relacional?
a) Bancos de dados relacionais usam tabelas, enquanto bancos de dados não relacionais
não.
b) Bancos de dados relacionais são mais lentos que bancos de dados não relacionais.
c) Bancos de dados não relacionais são mais escaláveis que bancos de dados relacionais.
d) Bancos de dados relacionais são mais seguros que bancos de dados não relacionais.
e) Bancos de dados relacionais são mais complexos que bancos de dados não relacionais.
Exercicios teórico
3. O que é uma chave primária em uma tabela do MySQL?
a) Uma coluna que identifica unicamente cada registro na tabela.
b) Uma coluna que armazena o nome do cliente.
c) Uma coluna que armazena a data da venda.
d) Uma coluna que armazena o valor do produto.
e) Uma coluna que armazena a descrição do produto.
Exercícios teórico
4. O que é uma chave estrangeira em uma tabela do MySQL?
a) Uma coluna que referência uma coluna em outra tabela.
b) Uma coluna que armazena o nome do cliente.
c) Uma coluna que armazena a data da venda.
d) Uma coluna que armazena o valor do produto.
e) Uma coluna que armazena a descrição do produto.
Exercícios teórico
5. Qual é a diferença entre uma consulta SELECT e uma consulta INSERT?
a) Uma consulta SELECT recupera dados do banco de dados, enquanto uma consulta INSERT
insere dados no banco de dados.
b) Uma consulta SELECT é mais rápida que uma consulta INSERT.
c) Uma consulta INSERT é mais complexa que uma consulta SELECT.
d) Uma consulta SELECT pode ser usada para atualizar dados no banco de dados.
e) Uma consulta INSERT pode ser usada para excluir dados do banco de dados.
Exercícios teórico
6. O que é um JOIN em uma consulta SQL?
a) Uma cláusula que combina dados de duas ou mais tabelas.
b) Uma cláusula que ordena os dados em uma tabela.
c) Uma cláusula que filtra os dados em uma tabela.
d) Uma cláusula que agrupa os dados em uma tabela.
e) Uma cláusula que calcula valores em uma tabela.
Exercícios teórico
7. O que é uma subconsulta em uma consulta SQL?
a) Uma consulta que é aninhada dentro de outra consulta.
b) Uma consulta que é usada para atualizar dados no banco de dados.
c) Uma consulta que é usada para excluir dados do banco de dados.
d) Uma consulta que é usada para criar uma nova tabela.
e) Uma consulta que é usada para modificar a estrutura de uma tabela.
Exercícios teórico
8. O que é um gatilho no MySQL?
a) Uma ação que é executada automaticamente quando um evento específico ocorre
no banco de dados.
b) Uma função que é usada para calcular valores em uma tabela.
c) Uma stored procedure que é usada para atualizar dados no banco de dados.
d) Uma stored procedure que é usada para excluir dados do banco de dados.
e) Uma stored procedure que é usada para criar uma nova tabela.
Exercícios teórico
9. O que é uma stored procedure no MySQL?
a) Um conjunto de instruções SQL que é armazenado no banco de dados e pode ser
executado posteriormente.
b) Uma função que é usada para calcular valores em uma tabela.
c) Uma stored procedure que é usada para atualizar dados no banco de dados.
d) Uma stored procedure que é usada para excluir dados do banco de dados.
e) Uma stored procedure que é usada para criar uma nova tabela.
Exercícios teórico
10. Qual é a diferença entre um índice e uma chave primária?
a) Um índice é usado para acelerar a pesquisa de dados em uma tabela, enquanto
uma chave primária identifica unicamente cada registro na tabela.
b) Um índice é mais lento que uma chave primária.
c) Um índice é mais complexo que uma chave primária.
d) Um índice pode ser usado para atualizar dados no banco de dados.
e) Um índice pode ser usado para excluir dados do banco de dados.
Exercícios teórico - Gabarito
1. a) SQL 1. a) Uma cláusula que combina dados de duas
ou mais tabelas.
2. a) Bancos de dados relacionais usam tabelas,
enquanto bancos de dados não relacionais 2. a) Uma consulta que é aninhada dentro de
não. outra consulta.
3. a) Uma coluna que identifica unicamente 3. a) Uma ação que é executada
cada registro na tabela. automaticamente quando um evento
específico ocorre no banco de dados.
4. a) Uma coluna que referência uma coluna
em outra tabela. 4. a) Um conjunto de instruções SQL que é
armazenado no banco de dados e pode ser
5. a) Uma consulta SELECT recupera dados do
executado posteriormente.
banco de dados, enquanto uma consulta
INSERT insere dados no banco de dados. 5. a) Um índice é usado para acelerar a
pesquisa de dados em uma tabela, enquanto
uma chave primária identifica unicamente
cada registro na tabela.
Exercicio 1 - Prático

Crie uma consulta para selecionar todos os


registros da tabela "clientes".
Exercicio 1 - Resposta

SELECT * FROM clientes;


Exercicio 2 - Prático

Filtragem de Dados:
• Crie uma consulta para selecionar os clientes da cidade
"Salvador".
• Crie uma consulta para selecionar os clientes com idade superior
a 18 anos.
Exercicio 2 - Resposta

SELECT * FROM clientes WHERE cidade =


'Salvador’;

SELECT * FROM clientes WHERE idade > 18;


Exercicio 3 - Prático

Ordenação
• Crie uma consulta para selecionar os clientes da cidade
"Salvador".
• Crie uma consulta para selecionar os clientes com idade superior
a 18 anos.
Exercicio 3 - Resposta

SELECT * FROM clientes WHERE cidade =


'Salvador’;

SELECT * FROM clientes WHERE idade > 18;


Exercicio 4 - Prático

Agregação
• Crie uma consulta para calcular a quantidade total de clientes.
• Crie uma consulta para calcular a média de idade dos clientes.
Exercicio 4 - Resposta

SELECT COUNT(*) AS total_clientes FROM


clientes;

SELECT AVG(idade) AS media_idade FROM


clientes;
Exercicio 5 - Prático

Inserir um novo cliente no banco de dados.


Exercicio 5 - Resposta

INSERT INTO clientes (nome, email, cidade,


data_nascimento) VALUES (‘Celso Silva',
‘celsosilva@email.com', 'Salvador', ‘2020-12-03');
Exercicio 6 - Prático

Atualizar o email do cliente com o ID 10.


Exercicio 6 - Resposta

UPDATE clientes SET email =


'newemail@email.com' WHERE cliente_id
= 10;
Exercicio 7 - Prático

Incrementar a idade de todos os clientes em 1 ano.


Exercicio 7 - Resposta

UPDATE clientes SET idade = idade + 1;


Exercicio 8 - Prático

Excluir o cliente com o ID 15.


Exercicio 8 - Resposta

DELETE FROM clientes WHERE cliente_id = 15;


Exercicio 9 - Prático

Selecionar os nomes dos clientes que


compraram mais de R$1000 em produtos.
Exercicio 9 - Resposta
SELECT clientes.nome FROM clientes
INNER JOIN pedidos ON clientes.cliente_id = pedidos.cliente_id
INNER JOIN produtos ON pedidos.produto_id = produtos.produto_id
WHERE produtos.preco > 1000
GROUP BY clientes.cliente_id
HAVING SUM(pedidos.quantidade) > 1;
Exercicio 10 - Prático

Selecionar o nome do cliente, nome do produto


e data da venda para todas as vendas realizadas
em 2023
Exercicio 10 - Resposta
SELECT clientes.nome, produtos.nome, pedidos.data_venda
FROM clientes
INNER JOIN pedidos ON clientes.cliente_id = pedidos.cliente_id
INNER JOIN produtos ON pedidos.produto_id =
produtos.produto_id
WHERE YEAR(pedidos.data_venda) = 2023;
Exercicio prático 1
Exercício 1: Análise de Vendas por Funcionário

Objetivo: Obter insights sobre as vendas realizadas por cada funcionário, incluindo o total vendido, a
quantidade de produtos vendidos e a média de venda por item.

Passos:
1.Selecione as colunas necessárias:
•codVenda
•codFunc_Fk
•nomeFunc (da tabela funcionario)
•totalVendido
•COUNT(DISTINCT codProd_Fk) AS quantidade_produtos_vendidos
•SUM(subTotal) / COUNT(DISTINCT codProd_Fk) AS media_venda_item
2.Junte as tabelas venda e funcionario:
•Utilize a cláusula JOIN na coluna codFunc_Fk.
3.Agrupe os resultados por funcionário:
•Utilize a cláusula GROUP BY na coluna codFunc_Fk.
4.Ordene os resultados por total vendido:
•Utilize a cláusula ORDER BY na coluna totalVendido em ordem decrescente.
Exercicio prático 2
Exercício 2: Estoque Mínimo e Produtos Esgotados

Objetivo: Identificar produtos com estoque baixo ou esgotado para auxiliar


na gestão de compras e evitar rupturas de estoque.

Passos:
1.Selecione as colunas necessárias:
1. codProd
2. descricao
3. qtdEstocada
4. qtdMinima

Verifique se a quantidade em estoque é menor ou igual à quantidade


mínima:
Utilize a condição WHERE qtdEstocada <= qtdMinima.
Exercicio prático 3 - Aluno

Análise de Vendas por Funcionário:

1.Qual funcionário teve o menor total de vendas?


2.Qual funcionário vendeu o menor número de produtos
diferentes?
3.Qual funcionário teve a menor média de venda por item?
4.Existe alguma relação entre a data de admissão do funcionário
e seu desempenho em vendas?
Exercicio prático 4 – Aluno

Estoque Mínimo e Produtos Esgotados:

1.Quais produtos estão com estoque entre 10 e 20 unidades?


2.Qual o valor total do estoque dos produtos com estoque
abaixo do mínimo?
3.Qual a frequência de vendas de cada produto?
4.Existe algum produto que nunca foi vendido?
Exercicio prático 5 – Aluno

Performance de Produtos:

1.Qual produto teve o maior lucro total?


2.Qual produto teve a maior margem de lucro?
3.Qual produto teve a menor rotatividade de estoque?
4.Existe alguma relação entre o preço de venda e a quantidade
vendida de um produto?

Você também pode gostar