各国の最大人口

SQLBeginner

はじめに

このプロジェクトでは、MySQL データベースにアクセスし、データをインポートし、city テーブルから総人口の多い上位 10 カ国をクエリする方法を学びます。

👀 プレビュー

プロジェクトタスクのプレビュー

🎯 タスク

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

  • パスワードなしで sudo コマンドを使用して MySQL にアクセスする方法
  • SQL スクリプトから MySQL データベースにデータをインポートする方法
  • city テーブルから総人口の多い上位 10 カ国を取得する SQL クエリを書く方法

🏆 達成目標

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

  • MySQL データベースに効率的にアクセスし、管理することができる
  • MySQL データベースにデータをインポートし、操作する方法を理解することができる
  • データベースからデータを取得し、分析する SQL クエリを書くことができる

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

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

  1. ターミナルを開き、以下のコマンドを使用して MySQL サービスを起動します。
sudo service mysql start
  1. パスワードなしで sudo コマンドを使用して MySQL にアクセスします。
sudo mysql
  1. world.sql スクリプトから MySQL データベースにデータをインポートします。
SOURCE /home/labex/project/world.sql;

これにより、world.sql スクリプトからのデータが MySQL データベースにインポートされます。

人口の多い上位 10 カ国をクエリする

このステップでは、city テーブルから各国の総人口をクエリし、人口の多い順に並べ替えて、上位 10 件のレコードを取得する方法を学びます。

  1. /home/labex/project/ ディレクトリに getBigPopulation.sql という名前の新しい SQL スクリプトファイルを作成します。

  2. getBigPopulation.sql ファイルを開き、以下の SQL クエリを追加します。

SELECT CountryCode AS 'Country Code', SUM(Population) AS 'Total Population'
FROM city
GROUP BY CountryCode
ORDER BY SUM(Population) DESC
LIMIT 10;

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

  • city テーブルから CountryCodePopulation の合計(Total Population として)を選択します。
  • 結果を CountryCode でグループ化します。
  • 結果を Total Population の降順で並べ替えます。
  • 結果を上位 10 件に制限します。
  1. getBigPopulation.sql ファイルを保存します。

クエリスクリプトを実行する

このステップでは、MySQL で getBigPopulation.sql スクリプトを実行する方法を学びます。

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

これにより、getBigPopulation.sql スクリプト内の SQL クエリが実行され、結果が表示されます。

出力は以下のようになります。

MariaDB [world]> SOURCE /home/labex/project/getBigPopulation.sql;
+--------------+------------------+
| Country Code | Total Population |
+--------------+------------------+
| CHN          |        175953614 |
| IND          |        123298526 |
| BRA          |         85876862 |
| USA          |         78625774 |
| JPN          |         77965107 |
| RUS          |         69150700 |
| MEX          |         59752521 |
| KOR          |         38999893 |
| IDN          |         37485695 |
| PAK          |         31546745 |
+--------------+------------------+
10 rows in set (0.005 sec)

これでプロジェクトは完了です。あなたは MySQL データベースの city テーブルから総人口の多い上位 10 カ国を正常にクエリしました。

まとめ

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

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