包括的な MySQL 関数の練習

MySQLBeginner
オンラインで実践に進む

はじめに

このプロジェクトでは、人事データベースの emp テーブルから情報を取得するための標準的な MySQL 関数の使い方を学びます。MySQL にアクセスし、データをインポートし、さまざまなデータ操作タスクを実行するための SQL スクリプトを書く練習を行います。

👀 プレビュー

MariaDB [personnel]> SOURCE /home/labex/project/BasicFunctions.sql;
+--------+--------+-------------+
| Name   | Salary | Days on Job |
+--------+--------+-------------+
| 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 データベースにインポートする方法
  • emp テーブルの各社員の名前、日給、勤務日数を取得する SQL スクリプトを書く方法
  • 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 スクリプトを書く

このステップでは、emp テーブルの各社員の名前、日給、勤務日数を取得する SQL スクリプトを書きます。

  1. BasicFunctions.sql ファイルを開きます。
  2. BasicFunctions.sql ファイルに以下の 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 日と仮定して日給を計算し、小数点以下 2 桁で丸めます。
  • 雇用日と 2022 年 1 月 1 日の差を求めて勤務日数を計算します。
  1. BasicFunctions.sql ファイルを保存します。

SQL スクリプトを実行する

このステップでは、前のステップで作成した SQL スクリプトを実行します。

  1. MySQL のプロンプトで、以下のコマンドを実行して BasicFunctions.sql スクリプトを実行します。
MariaDB [personnel]> SOURCE /home/labex/project/BasicFunctions.sql;

これにより、SQL スクリプトが実行され、MySQL のプロンプトに結果が表示されます。

出力は以下に似たものになるはずです。

+--------+--------+-------------+
| Name   | Salary | Days on Job |
+--------+--------+-------------+
| 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)

おめでとうございます!personnel データベースの emp テーブルから情報を取得するための SQL スクリプトを書き、実行することで、正常にこのプロジェクトを完了しました。

まとめ

おめでとうございます!このプロジェクトを完了しました。あなたのスキルを向上させるために、LabEx でさらに多くの実験を行って練習することができます。

✨ 解答を確認して練習✨ 解答を確認して練習✨ 解答を確認して練習