Funções Gerais Abrangentes

MySQLBeginner
Pratique Agora

Introdução

Neste projeto, você aprenderá como acessar o MySQL, importar dados e consultar informações de funcionários usando funções embutidas do MySQL.

👀 Visualização

MariaDB [personnel]> SOURCE /home/labex/project/answer.sql;
+------------------------------------------+---------------+----------------+
| Name                                     | Annual Income | Current User   |
+------------------------------------------+---------------+----------------+
| bc70be7f38046e64dd779f276ce4a20f99153f26 | 800.000       | root@localhost |
| 6e1cae96112fe249dc0fb4f9a004c9dc04315608 | 1,900.000     | root@localhost |
| 7c7f32425fa076caeed971f5549c82ffa88fd0eb | 1,750.000     | root@localhost |
| a1787353201302d65c744486c1e940709fee0eff | 2,975.000     | root@localhost |
| f3b9b87a2f377c006e935f32dd25ea55ebf7f551 | 2,650.000     | root@localhost |
| 7cde55b3a6e9cf610db200b6b9cc9b5adca1657f | 2,850.000     | root@localhost |
| 4f90e103facadd0787d7a6828f096f6e66595a47 | 2,450.000     | root@localhost |
| 7634fdc80aa4027cfd5e966abc1b6b4b4ea19fbe | 3,000.000     | root@localhost |
| 50b8a339f82ab9ce6c55bf8ea10dad8513e9d142 | 5,000.000     | root@localhost |
| e043e3d3ebddafaa5ed97f7dcc4d236286f8ad4a | 1,500.000     | root@localhost |
| 2d2eb27e1db8836e44cd4e94f58b89728331e8de | 1,100.000     | root@localhost |
| 6afc44af3cbdbb6718e8da8715a1956b895dc5d2 | 950.000       | root@localhost |
| 7e5b07d8bbb5e0a55b5d428476d4691b3ee97b4a | 3,000.000     | root@localhost |
| 25d5ae3b0e0dac511ba94e337b88e0887538b31f | 1,300.000     | root@localhost |
+------------------------------------------+---------------+----------------+
14 rows in set (0.000 sec)

🎯 Tarefas

Neste projeto, você aprenderá:

  • Como acessar o MySQL usando o comando sudo sem uma senha
  • Como importar dados de um arquivo SQL para o banco de dados MySQL
  • Como consultar os nomes e a renda anual dos funcionários da tabela emp
  • Como criptografar os nomes dos funcionários usando a função SHA
  • Como formatar a renda anual com 3 casas decimais
  • Como exibir as informações da conta do banco de dados atual

🏆 Conquistas

Após concluir este projeto, você será capaz de:

  • Acessar e gerenciar com confiança um banco de dados MySQL usando a linha de comando
  • Realizar operações de importação de dados e consultas básicas de dados
  • Aplicar funções embutidas do MySQL para manipular e formatar dados
  • Compreender a importância da segurança e criptografia de dados
  • Demonstrar sua capacidade de trabalhar com bancos de dados MySQL e consultas SQL

Acessar o MySQL e Importar Dados

Nesta etapa, você aprenderá como acessar o MySQL usando o comando sudo sem nenhuma senha e importar os dados de /home/labex/project/personnel.sql para o MySQL e mudar para o banco de dados personnel.

  1. Abra um terminal e inicie o serviço MySQL usando o seguinte comando:
sudo service mysql start
  1. Acesse o MySQL usando o comando sudo:
sudo mysql
  1. Importe os dados de /home/labex/project/personnel.sql para o MySQL e mude para o banco de dados personnel:
MariaDB [None]> SOURCE /home/labex/project/personnel.sql;
✨ Verificar Solução e Praticar

Consultar Nomes de Funcionários e Renda Anual

Nesta etapa, você aprenderá como consultar os nomes e a renda anual de todos os funcionários na tabela emp e exibir as informações da conta do banco de dados para a operação atual.

  1. Adicione o seguinte código ao arquivo answer.sql.
SELECT SHA(emp.ename) AS 'Name',
       FORMAT(IFNULL(emp.sal, 0) + IFNULL(emp.comm, 0), 3) AS 'Annual Income',
       CURRENT_USER() AS 'Current User'
FROM emp;

Aqui está o que o código faz:

  • SHA(emp.ename): Criptografa os nomes dos funcionários usando a função SHA.
  • IFNULL(emp.sal, 0) + IFNULL(emp.comm, 0): Calcula a renda anual somando as colunas de salário (sal) e bônus (comm), e substitui quaisquer valores NULL por 0.
  • FORMAT(... , 3): Formata a renda anual com 3 casas decimais.
  • CURRENT_USER(): Exibe as informações da conta do banco de dados atual.
  1. Execute o arquivo answer.sql.
SOURCE /home/labex/project/answer.sql;

A consulta retornará a seguinte saída:

+------------------------------------------+---------------+----------------+
| Name                                     | Annual Income | Current User   |
+------------------------------------------+---------------+----------------+
| bc70be7f38046e64dd779f276ce4a20f99153f26 | 800.000       | root@localhost |
| 6e1cae96112fe249dc0fb4f9a004c9dc04315608 | 1,900.000     | root@localhost |
| 7c7f32425fa076caeed971f5549c82ffa88fd0eb | 1,750.000     | root@localhost |
| a1787353201302d65c744486c1e940709fee0eff | 2,975.000     | root@localhost |
| f3b9b87a2f377c006e935f32dd25ea55ebf7f551 | 2,650.000     | root@localhost |
| 7cde55b3a6e9cf610db200b6b9cc9b5adca1657f | 2,850.000     | root@localhost |
| 4f90e103facadd0787d7a6828f096f6e66595a47 | 2,450.000     | root@localhost |
| 7634fdc80aa4027cfd5e966abc1b6b4b4ea19fbe | 3,000.000     | root@localhost |
| 50b8a339f82ab9ce6c55bf8ea10dad8513e9d142 | 5,000.000     | root@localhost |
| e043e3d3ebddafaa5ed97f7dcc4d236286f8ad4a | 1,500.000     | root@localhost |
| 2d2eb27e1db8836e44cd4e94f58b89728331e8de | 1,100.000     | root@localhost |
| 6afc44af3cbdbb6718e8da8715a1956b895dc5d2 | 950.000       | root@localhost |
| 7e5b07d8bbb5e0a55b5d428476d4691b3ee97b4a | 3,000.000     | root@localhost |
| 25d5ae3b0e0dac511ba94e337b88e0887538b31f | 1,300.000     | root@localhost |
+------------------------------------------+---------------+----------------+
14 rows in set (0.000 sec)

A consulta foi salva no arquivo /home/labex/project/answer.sql.

✨ Verificar Solução e Praticar

Resumo

Parabéns! Você concluiu este projeto. Você pode praticar mais laboratórios no LabEx para aprimorar suas habilidades.