5 か国の最大人口

SQLSQLBeginner
今すぐ練習

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

このプロジェクトでは、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 テーブルの人口データを分析して解釈する

Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL sql(("SQL")) -.-> sql/BasicSQLCommandsGroup(["Basic SQL Commands"]) sql(("SQL")) -.-> sql/DataManipulationandQueryingGroup(["Data Manipulation and Querying"]) mysql(("MySQL")) -.-> mysql/BasicKeywordsandStatementsGroup(["Basic Keywords and Statements"]) mysql/BasicKeywordsandStatementsGroup -.-> mysql/use_database("Database Selection") sql/BasicSQLCommandsGroup -.-> sql/select("SELECT statements") sql/BasicSQLCommandsGroup -.-> sql/insert("INSERT INTO statements") mysql/BasicKeywordsandStatementsGroup -.-> mysql/select("Data Retrieval") mysql/BasicKeywordsandStatementsGroup -.-> mysql/source("External Code Execution") sql/BasicSQLCommandsGroup -.-> sql/create_table("CREATE TABLE statements") sql/DataManipulationandQueryingGroup -.-> sql/order_by("ORDER BY clause") sql/DataManipulationandQueryingGroup -.-> sql/group_by("GROUP BY clause") subgraph Lab Skills mysql/use_database -.-> lab-301352{{"5 か国の最大人口"}} sql/select -.-> lab-301352{{"5 か国の最大人口"}} sql/insert -.-> lab-301352{{"5 か国の最大人口"}} mysql/select -.-> lab-301352{{"5 か国の最大人口"}} mysql/source -.-> lab-301352{{"5 か国の最大人口"}} sql/create_table -.-> lab-301352{{"5 か国の最大人口"}} sql/order_by -.-> lab-301352{{"5 か国の最大人口"}} sql/group_by -.-> lab-301352{{"5 か国の最大人口"}} end

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 でさらに多くの実験を行って練習してください。