1
resposta

Mão na massa

  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 seguintes registros de funcionários na tabela:

ID: 1, Nome: Heitor Vieira, Departamento: Financeiro, Salário: 4959.22
ID: 2, Nome: Daniel Campos, Departamento: Vendas, Salário: 3884.44
ID: 3, Nome: Luiza Dias, Departamento: TI, Salário: 8205.78
ID: 4, Nome: Davi Lucas Moraes, Departamento: Financeiro, Salário: 8437.02
ID: 5, Nome: Pietro Cavalcanti, Departamento: TI, Salário: 4946.88
ID: 6, Nome: Evelyn da Mata, Departamento: Vendas, Salário: 5278.88
ID: 7, Nome: Isabella Rocha, Departamento: Marketing, Salário: 4006.03
ID: 8, Nome: Sra. Manuela Azevedo, Departamento: Vendas, Salário: 6101.88
ID: 9, Nome: Brenda Cardoso, Departamento: TI, Salário: 8853.34
ID: 10, Nome: Danilo Souza, Departamento: TI, Salário: 8242.14

CREATE TABLE funcionarios (
  ID INT PRIMARY KEY,
  Nome VARCHAR (100),
  Departamento VARCHAR (100),
  Salario FLOAT
  );
  
  INSERT INTO funcionarios (
    ID,
    Nome,
    Departamento,
    Salario)
    VALUES
(1,'Heitor Vieira', 'Financeiro', 4959.22),
(2, 'Daniel Campos', 'Vendas', 3884.44),
(3, 'Luiza Dias', 'TI', 8205.78),
(4, 'Davi Lucas Moraes', 'Financeiro', 8437.02),
(5, 'Pietro Cavalcanti', 'TI', 4946.88),
(6, 'Evelyn da Mata', 'Vendas', 5278.88),
(7, 'Isabella Rocha', 'Marketing', 4006.03),
(8, 'Manuela Azevedo', 'Vendas', 6101.88),
(9, 'Brenda Cardoso', 'TI', 8853.34),
(10, 'Danilo Souza', 'TI', 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 = 'Vendas';
  1. Selecione os funcionários da tabela funcionarios cujo salário seja maior que 5000.
SELECT * FROM funcionarios WHERE Salario > 5000;
  1. Na tabela funcionarios, selecione todos os departamentos distintos.
SELECT DISTINCT Departamento FROM funcionarios;
  1. Atualize o salário dos funcionários do departamento de "TI" para 7500 na tabela funcionarios.
UPDATE funcionarios set Salario = 7500.00 WHERE Departamento = 'TI';
  1. Delete da tabela funcionarios todos os registros de funcionários que ganham menos de 4000.
DELETE FROM funcionarios WHERE Salario < 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, Salario from funcionarios where departamento = 'Vendas' AND Salario >= 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)
  );
  
 INSERT INTO Projetos (
   id_projeto,
   nome_projeto,
   id_gerente)
   VALUES
   (1, 'Enganando o Bobo na Casca do Ovo', 2),
   (2, 'Falindo a Empresa', 4),
   (3, 'This is Elon Musk', 3);
   
   SELECT * FROM Projetos WHERE id_gerente = 2;

Nessa etapa resolvi usar um pouco de bom humor para descontrair.

  1. Remova a tabela funcionarios do banco de dados.
DROP TABLE funcionarios;
1 resposta

Olá, Wellington! Como vai?

Parabéns pela resolução da atividade!

Observei que você explorou o uso de chaves primárias para garantir a integridade dos registros com SQL, utilizou muito bem o comando SELECT para filtrar informações e ainda compreendeu a importância do FOREIGN KEY para relacionar tabelas.

Uma dica interessante para o futuro é usar o comando JOIN para combinar dados de diferentes tabelas. Assim:

SELECT f.Nome, p.nome_projeto
FROM funcionarios f
JOIN Projetos p ON f.ID = p.id_gerente;

Isso faz a junção entre funcionários e projetos, permitindo visualizar quem gerencia cada projeto.

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!