介绍
在本项目中,你将学习如何访问 MySQL、导入数据以及使用 MySQL 内置函数查询员工信息。
👀 预览
MariaDB [personnel]> SOURCE /home/labex/project/answer.sql;
+------------------------------------------+---------------+----------------+
| 姓名 | 年收入 | 当前用户 |
+------------------------------------------+---------------+----------------+
| bc70be7f38046e64dd779f276ce4a20f99153f26 | 800000.000 | root@localhost |
| 6e1cae96112fe249dc0fb4f9a004c9dc04315608 | 1900000.000 | root@localhost |
| 7c7f32425fa076caeed971f5549c82ffa88fd0eb | 1750000.000 | root@localhost |
| a1787353201302d65c744486c1e940709fee0eff | 2975000.000 | root@localhost |
| f3b9b87a2f377c006e935f32dd25ea55ebf7f551 | 2650000.000 | root@localhost |
| 7cde55b3a6e9cf610db200b6b9cc9b5adca1657f | 2850000.000 | root@localhost |
| 4f90e103facadd0787d7a6828f096f6e66595a47 | 2450000.000 | root@localhost |
| 7634fdc80aa4027cfd5e966abc1b6b4b4ea19fbe | 3000000.000 | root@localhost |
| 50b8a339f82ab9ce6c55bf8ea10dad8513e9d142 | 5000000.000 | root@localhost |
| e043e3d3ebddafaa5ed97f7dcc4d236286f8ad4a | 1500000.000 | root@localhost |
| 2d2eb27e1db8836e44cd4e94f58b89728331e8de | 1100000.000 | root@localhost |
| 6afc44af3cbdbb6718e8da8715a1956b895dc5d2 | 950000.000 | root@localhost |
| 7e5b07d8bbb5e0a55b5d428476d4691b3ee97b4a | 3000000.000 | root@localhost |
| 25d5ae3b0e0dac511ba94e337b88e0887538b31f | 1300000.000 | root@localhost |
+------------------------------------------+---------------+----------------+
14 rows in set (0.000 sec)
🎯 任务
在本项目中,你将学习:
- 如何使用
sudo命令无密码访问 MySQL - 如何将 SQL 文件中的数据导入 MySQL 数据库
- 如何从
emp表中查询员工的姓名和年收入 - 如何使用 SHA 函数对员工姓名进行加密
- 如何将年收入格式化为保留三位小数
- 如何显示当前数据库账户信息
🏆 成果
完成本项目后,你将能够:
- 自信地使用命令行访问和管理 MySQL 数据库
- 执行数据导入和基本数据查询操作
- 应用 MySQL 内置函数来操作和格式化数据
- 理解数据安全和加密的重要性
- 展示你使用 MySQL 数据库和 SQL 查询的能力
访问 MySQL 并导入数据
在本步骤中,你将学习如何使用 sudo 命令无密码访问 MySQL,并将 /home/labex/project/personnel.sql 中的数据导入 MySQL 并切换到 personnel 数据库。
- 打开终端并使用以下命令启动 MySQL 服务:
sudo service mysql start
- 使用
sudo命令访问 MySQL:
sudo mysql
- 将
/home/labex/project/personnel.sql中的数据导入 MySQL 并切换到personnel数据库:
MariaDB [None]> SOURCE /home/labex/project/personnel.sql;
查询员工姓名和年收入
在本步骤中,你将学习如何查询 emp 表中所有员工的姓名和年收入,并显示当前操作的数据库账户信息。
- 将以下代码添加到
answer.sql文件中。
SELECT SHA(emp.ename) AS '姓名',
FORMAT(IFNULL(emp.sal, 0) + IFNULL(emp.comm, 0), 3) AS '年收入',
CURRENT_USER() AS '当前用户'
FROM emp;
代码功能如下:
SHA(emp.ename):使用 SHA 函数对员工姓名进行加密。IFNULL(emp.sal, 0) + IFNULL(emp.comm, 0):通过将薪资(sal)和奖金(comm)列相加来计算年收入,并将任何 NULL 值替换为 0。FORMAT(..., 3):将年收入格式化为保留三位小数。CURRENT_USER():显示当前数据库账户信息。
- 执行
answer.sql文件。
SOURCE /home/labex/project/answer.sql;
查询将返回以下输出:
+------------------------------------------+---------------+----------------+
| 姓名 | 年收入 | 当前用户 |
+------------------------------------------+---------------+----------------+
| 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 行记录(0.000 秒)
该查询已保存在文件 /home/labex/project/answer.sql 中。
总结
恭喜你!你已完成本项目。你可以在 LabEx 中练习更多实验以提升技能。



