1
resposta

[Projeto] Desafio 01 - Tabela 'funcionarios'

  1. Crie uma tabela chamada 'funcionarios' com as seguintes colunas: id (int, chave primária), nome (varchar(100)), departamento (varchar(100)) e salario (float). Em seguida, insira os registros de funcionários na tabela:
CREATE TABLE funcionarios (
  ID_funcionario INT PRIMARY KEY,
  nome_funcionario VARCHAR (100),
  departamento_funcionario VARCHAR (100),
  salario_funcionario FLOAT
  );
  
  INSERT into funcionarios (
   ID_funcionario,
   nome_funcionario,
   departamento_funcionario,
   salario_funcionario
   )
    
VALUES
   (1, 'Heitor Vieira', 'Financeiro', 4959.22),
   (2, 'Daniel Campos', 'Vendas', 3884.44),
   (3, 'Luíza Dias', 'T.I.', 8205.78),
   (4, 'Davi Lucas Moraes', 'Financeiro', 8437.02),
   (5, 'Pietro Cavalcanti', 'T.I.', 4946.88),
   (6, 'Evelyn da Mata', 'Vendas', 5278.88),
   (7, 'Isabella Rocha', 'Marketing', 4006.03),
   (8, 'Sra. Manuela Azevedo', 'Vendas', 6101.88),
   (9, 'Brenda Cardoso', 'T.I.', 8853.34),
   (10, 'Danilo Souza', 'T.I.', 8242.14);
  1. Selecione todos os campos de todos os registros na tabela 'funcionarios':
SELECT * FROM funcionarios;
  1. Na tabela 'funcionarios', selecione os nomes dos funcionários que trabalham no departamento de 'Vendas':
SELECT * FROM funcionarios WHERE departamento_funcionario = 'Vendas';
  1. Selecione os funcionários da tabela 'funcionarios' cujo salário seja maior que 5000:
SELECT * FROM funcionarios WHERE salario_funcionario > 5000;
  1. Na tabela 'funcionarios', selecione todos os departamentos distintos:
SELECT DISTINCT departamento_funcionario from funcionarios;
  1. Atualize o salário dos funcionários do departamento de 'T.I.' para 7500 na tabela 'funcionarios':
UPDATE funcionarios
SET salario_funcionario = 7500
WHERE departamento_funcionario = 'T.I.';
  1. Delete da tabela 'funcionarios' todos os registros de funcionários que ganham menos de 4000:
DELETE FROM funcionarios WHERE salario_funcionario < 4000;
  1. Selecione os nomes e salários dos funcionários que trabalham no departamento de 'Vendas' e cujo salário seja maior ou igual a 6000:
SELECT nome_funcionario, salario_funcionario FROM funcionarios WHERE departamento_funcionario = 'Vendas' AND salario_funcionario >= 6000;
  1. Crie uma tabela chamada 'projetos' com as colunas: id_projeto (int, chave primária), nome_projeto (varchar(100)), id_gerente (int, referência a id na tabela funcionarios). Insira 3 registros na tabela 'projetos' e, em seguida, selecione todos os projetos cujo id_gerente seja igual a 2:
CREATE table projetos (
  ID_projeto INT PRIMARY KEY,
  nome_projeto VARCHAR(100),
  ID_gerente INT,
  FOREIGN KEY (ID_gerente) REFERENCES funcionarios (id_funcionario)
  );
  
SELECT * FROM projetos;

INSERT INTO projetos (
  ID_projeto,
  nome_projeto,
  ID_gerente
  )
  
VALUES
     (1, 'Saldão 2026', 2),
    (2, 'Vendas 2026', 4),
    (3, 'Descontos 2026', 7);
 
SELECT * from projetos WHERE ID_gerente = 2;
  1. Remova a tabela 'funcionarios' do banco de dados:
DROP TABLE funcionarios;
1 resposta

Olá, Laís! Como vai?

Parabéns pela resolução da atividade!

Observei que você explorou o uso de criação de tabelas para estruturar dados, utilizou muito bem os comandos de inserção e seleção para manipular registros e ainda compreendeu a importância das cláusulas de atualização e exclusão para manter a consistência do banco.

Uma dica interessante para o futuro é aplicar o ORDER BY para organizar os resultados de forma mais clara. Assim:

SELECT nome_funcionario, salario_funcionario 
FROM funcionarios 
WHERE departamento_funcionario = 'Vendas' 
ORDER BY salario_funcionario DESC;

Isso faz com que os funcionários do departamento de Vendas sejam listados em ordem decrescente de salário, facilitando a análise.

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!