5 か国の最大人口

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

はじめに

このプロジェクトでは、city テーブルの人口データを照会し、人口が最も多い上位 5 の国または地域を取得する方法を学びます。

👀 プレビュー

MariaDB [world]> SOURCE /home/labex/project/getBigPopulation.sql;
+-------------+---------------+
| CountryCode | SumPopulation |
+-------------+---------------+
| CHN         |     175953614 |
| IND         |     123298526 |
| BRA         |      85876862 |
| USA         |      78625774 |
| JPN         |      77965107 |
+-------------+---------------+
5 rows in set (0.007 sec)

🎯 タスク

このプロジェクトでは、以下を学びます。

  • sudo コマンドを使ってパスワードなしで MySQL にアクセスする方法
  • SQL ファイルからデータを MySQL にインポートする方法
  • 人口が最も多い上位 5 の国または地域を取得する SQL クエリを書く方法
  • SQL クエリを実行して結果を表示する方法

🏆 成果

このプロジェクトを完了すると、以下ができるようになります。

  • MySQL データベースを操作する方法を理解する
  • データベースからデータを取得する SQL クエリを書く
  • city テーブルの人口データを分析して解釈する

MySQL にアクセスしてデータをインポートする

このステップでは、sudo コマンドを使ってパスワードなしで MySQL にアクセスし、/home/labex/project/world.sql のデータを MySQL にインポートする方法を学びます。

  1. MySQL サービスを起動する:
sudo service mysql start
  1. sudo コマンドを使って MySQL にアクセスする:
sudo mysql
  1. /home/labex/project/world.sql のデータを MySQL にインポートする:
MariaDB [(none)]> SOURCE /home/labex/project/world.sql;

SQL クエリを記述する

このステップでは、city テーブルから人口が最も多い上位 5 の国または地域を取得し、CountryCodeSumPopulation 列を取得する SQL クエリを書きます。

  1. getBigPopulation.sql ファイルを開きます。
  2. 次の SQL クエリをファイルに追加します。
SELECT CountryCode, SUM(Population) AS SumPopulation
FROM city
GROUP BY CountryCode
ORDER BY SumPopulation DESC
LIMIT 5;

このクエリは、以下のことを行います。

  • city テーブルから CountryCodePopulation 列の合計(SumPopulation として)を選択します。
  • 結果を CountryCode でグループ化します。
  • 結果を SumPopulation の降順で並べ替えます。
  • 結果を上位 5 行に制限します。

SQL クエリを実行する

このステップでは、getBigPopulation.sql ファイルに保存された SQL クエリを実行します。

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

これにより、getBigPopulation.sql ファイル内の SQL クエリが実行され、結果が表示されます。

+-------------+---------------+
| CountryCode | SumPopulation |
+-------------+---------------+
| CHN         |     175953614 |
| IND         |     123298526 |
| BRA         |      85876862 |
| USA         |      78625774 |
| JPN         |      77965107 |
+-------------+---------------+
5 rows in set (0.007 sec)

出力には、人口が最も多い上位 5 の国または地域とその CountryCode および SumPopulation が表示されます。

まとめ

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

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