はじめに
このプロジェクトでは、データベース、テーブルを作成し、テーブルにデータを挿入する方法を学びます。また、データに対してセルフジョインクエリを実行して、都市が所属する省を見つける方法も学びます。
👀 プレビュー

🎯 タスク
このプロジェクトでは、以下のことを学びます。
- MySQL サービスを起動し、パスワードなしで
sudoコマンドを使用して MySQL にアクセスする方法。 - データベース、テーブルを作成し、テーブルにデータを挿入する方法。
divisionテーブルに対してセルフジョインクエリを書いて、各都市の省を見つける方法。- MySQL でセルフジョインクエリスクリプトを実行する方法。
🏆 成果
このプロジェクトを完了すると、以下のことができるようになります。
- MySQL におけるデータベース、テーブルの作成とデータ挿入の基本操作を理解する。
- セルフジョインクエリを実行して、テーブルから関連情報を取得する。
- SQL クエリの知識を応用して、現実世界の問題を解決する。
MySQL サービスを起動して MySQL にアクセスする
このステップでは、MySQL サービスを起動し、パスワードなしでsudoコマンドを使用して MySQL にアクセスする方法を学びます。
- MySQL サービスを起動する:
sudo service mysql start
- MySQL にアクセスする:
sudo mysql
これで、パスワードなしで MySQL プロンプトにアクセスできるようになります。
データベース、テーブルを作成してデータを挿入する
このステップでは、データベース、テーブルを作成し、テーブルにデータを挿入する方法を学びます。
divisionデータベースを作成する:
CREATE DATABASE division;
divisionデータベースを使用する:
USE division;
divisionテーブルを作成する:
CREATE TABLE division (
id INT PRIMARY KEY,
name VARCHAR(22),
province_id INT
);
divisionテーブルにデータを挿入する:
INSERT INTO division VALUES
(1, 'Ontario', NULL),
(2, 'Toronto', 1),
(3, 'Quebec', NULL),
(4, 'Montreal', 3);
セルフジョインクエリを記述する
このステップでは、divisionテーブルに対してセルフジョインクエリを書いて、都市が所属する省を見つける方法を学びます。
/home/labex/projectディレクトリにgetProvince.sqlという名前の新しいファイルを作成します。getProvince.sqlファイルに、次のクエリを追加します。
SELECT city.name AS City, province.name AS Province
FROM division AS city
JOIN division AS province ON city.province_id = province.id
WHERE city.province_id IS NOT NULL;
このクエリは、divisionテーブルに対してセルフジョインを行います。ここでは、cityテーブルとprovinceテーブルがprovince_id列を基に結合されます。WHERE句により、province_idが NULL でない都市のみが結果に含まれるようになっています。
結果のテーブルには、CityとProvinceという列名が付けられます。
セルフジョインクエリを実行する
このステップでは、MySQL でセルフジョインクエリスクリプトを実行する方法を学びます。
- MySQL プロンプトに戻る:
sudo mysql
getProvince.sqlスクリプトを実行する:
SOURCE /home/labex/project/getProvince.sql;
以下の出力が表示されるはずです。
MariaDB [division]> SOURCE /home/labex/project/getProvince.sql;
+----------+----------+
| City | Province |
+----------+----------+
| Toronto | Ontario |
| Montreal | Quebec |
+----------+----------+
2 rows in set (0.000 sec)
この出力は、セルフジョインクエリによって取得された都市とそれに対応する省を示しています。
おめでとうございます!データベースを作成し、テーブルを作成し、データを挿入し、各都市の省を見つけるためのセルフジョインクエリを実行することで、このプロジェクトを成功裏に完了しました。
まとめ
おめでとうございます!このプロジェクトを完了しました。あなたは実験(Lab)をもっとたくさん行って技術力を向上させることができます。



