五个国家的最多人口数

SQLSQLBeginner
立即练习

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

简介

在这个项目中,你将学习如何查询城市表中的人口数据,并获取人口最多的前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
  • 如何编写SQL查询来获取人口最多的前5个国家或地区
  • 如何运行SQL查询并显示结果

🏆 成果

完成这个项目后,你将能够:

  • 了解如何使用MySQL数据库
  • 编写SQL查询从数据库中检索数据
  • 分析和解释城市表中的人口数据

Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL mysql(("MySQL")) -.-> mysql/BasicKeywordsandStatementsGroup(["Basic Keywords and Statements"]) sql(("SQL")) -.-> sql/BasicSQLCommandsGroup(["Basic SQL Commands"]) sql(("SQL")) -.-> sql/DataManipulationandQueryingGroup(["Data Manipulation and Querying"]) 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{{"五个国家的最多人口数"}} sql/select -.-> lab-301352{{"五个国家的最多人口数"}} sql/insert -.-> lab-301352{{"五个国家的最多人口数"}} mysql/select -.-> lab-301352{{"五个国家的最多人口数"}} mysql/source -.-> lab-301352{{"五个国家的最多人口数"}} sql/create_table -.-> lab-301352{{"五个国家的最多人口数"}} sql/order_by -.-> lab-301352{{"五个国家的最多人口数"}} sql/group_by -.-> lab-301352{{"五个国家的最多人口数"}} 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查询

在这一步中,你将编写SQL查询,从city表中获取人口最多的前5个国家或地区,并检索CountryCodeSumPopulation列。

  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个国家或地区,以及它们的CountryCodeSumPopulation

✨ 查看解决方案并练习

总结

恭喜你!你已经完成了这个项目。你可以在LabEx中练习更多实验来提升你的技能。