MySQL 综合功能实践

MySQLBeginner
立即练习

介绍

在本项目中,你将学习如何使用标准的 MySQL 函数从人事数据库的emp表中检索信息。你将练习访问 MySQL、导入数据以及编写 SQL 脚本来执行各种数据操作任务。

👀 预览

MariaDB [personnel]> SOURCE /home/labex/project/BasicFunctions.sql;
+--------+--------+-------------+
| 姓名   | 薪资   | 在职天数    |
+--------+--------+-------------+
| HTIMS  | 26.67  | 14990       |
| NELLA  | 53.33  | 14925       |
| DRAW   | 41.67  | 14923       |
| SENOJ  | 99.17  | 14884       |
| NITRAM | 41.67  | 14705       |
| EKALB  | 95.00  | 14855       |
| KRALC  | 81.67  | 14816       |
| TTOCS  | 100.00 | 12621       |
| GNIK   | 166.67 | 14655       |
| RENRUT | 50.00  | 14725       |
| SMADA  | 36.67  | 12621       |
| SEMAJ  | 31.67  | 14639       |
| DROF   | 100.00 | 14639       |
| RELLIM | 43.33  | 14588       |
+--------+--------+-------------+
14 rows in set (0.000 sec)

🎯 任务

在本项目中,你将学习:

  • 如何使用sudo命令无密码访问 MySQL
  • 如何将 SQL 文件中的数据导入 MySQL 数据库
  • 如何编写 SQL 脚本来检索emp表中每位员工的姓名、日薪和在职天数
  • 如何使用REVERSE()、ROUND()和DATEDIFF()等 MySQL 函数来操作数据

🏆 成果

完成本项目后,你将能够:

  • 使用命令行高效地访问和管理 MySQL 数据库
  • 利用标准的 MySQL 函数执行复杂的数据检索和操作任务
  • 开发 SQL 脚本来自动化数据处理和报告
  • 展示你对 MySQL 基础知识及其实际应用的理解

访问 MySQL 并导入数据

在本步骤中,你将学习如何使用sudo命令无密码访问 MySQL,并将/home/labex/project/personnel.sql文件中的数据导入到personnel数据库中。

  1. 启动 MySQL 服务:
sudo service mysql start
  1. 使用sudo命令访问 MySQL:
sudo mysql
  1. 将/home/labex/project/personnel.sql文件中的数据导入到personnel数据库:
MariaDB [(none)]> SOURCE /home/labex/project/personnel.sql;

现在你已成功访问 MySQL 并将数据导入到personnel数据库中。

编写 SQL 脚本

在本步骤中,你将编写 SQL 脚本来检索emp表中每位员工的姓名、日薪和在职天数。

  1. 打开BasicFunctions.sql文件。
  2. 将以下 SQL 代码添加到BasicFunctions.sql文件中:
SELECT REVERSE(ename) AS `Name`,
       ROUND(sal/30, 2) AS `Salary`,
       DATEDIFF('2022-01-01', hiredate) AS `Days on Job`
FROM emp;

这段 SQL 代码将:

  • 检索emp表中每位员工的姓名、日薪和在职天数。
  • 以相反的顺序显示姓名。
  • 通过假设每月 30 天并四舍五入到两位小数来计算日薪。
  • 通过计算入职日期与 2022 年 1 月 1 日之间的差值来计算在职天数。
  1. 保存BasicFunctions.sql文件。

运行 SQL 脚本

在本步骤中,你将运行在上一步中创建的 SQL 脚本。

  1. 在 MySQL 提示符下,运行以下命令来执行BasicFunctions.sql脚本:
MariaDB [personnel]> SOURCE /home/labex/project/BasicFunctions.sql;

这将执行 SQL 脚本并在 MySQL 提示符中显示结果。

输出应类似于以下内容:

+--------+--------+-------------+
| 姓名   | 薪资   | 在职天数    |
+--------+--------+-------------+
| HTIMS  | 26.67  | 14990       |
| NELLA  | 53.33  | 14925       |
| DRAW   | 41.67  | 14923       |
| SENOJ  | 99.17  | 14884       |
| NITRAM | 41.67  | 14705       |
| EKALB  | 95.00  | 14855       |
| KRALC  | 81.67  | 14816       |
| TTOCS  | 100.00 | 12621       |
| GNIK   | 166.67 | 14655       |
| RENRUT | 50.00  | 14725       |
| SMADA  | 36.67  | 12621       |
| SEMAJ  | 31.67  | 14639       |
| DROF   | 100.00 | 14639       |
| RELLIM | 43.33  | 14588       |
+--------+--------+-------------+
14 rows in set (0.000 sec)

恭喜!你已通过编写和运行 SQL 脚本来从personnel数据库的emp表中检索信息,成功完成了该项目。

总结

恭喜!你已完成本项目。你可以在 LabEx 中练习更多实验以提升技能。

✨ 查看解决方案并练习✨ 查看解决方案并练习✨ 查看解决方案并练习