国家国民生产总值和人口查询

SQLSQLBeginner
立即练习

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

简介

在本项目中,你将学习如何使用MySQL数据库中country表上的单行子查询操作,查询国民生产总值(GNP)高于法国的国家的GNP和人口。

👀 预览

MariaDB [world]> SOURCE /home/labex/project/getGNP.sql;
+---------------+------------+------------+
| Name          | GNP        | Population |
+---------------+------------+------------+
| 德国          | 2133367.00 |   82164700 |
| 日本          | 3787042.00 |  126714000 |
| 美国          | 8510700.00 |  278357000 |
+---------------+------------+------------+
3 rows in set (0.001 sec)

🎯 任务

在本项目中,你将学习:

  • 如何使用sudo命令无密码访问MySQL
  • 如何将SQL文件中的数据导入MySQL数据库
  • 如何编写SQL查询,以检索GNP高于法国的国家的名称、GNP和人口

🏆 成果

完成本项目后,你将能够:

  • 理解如何在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/where("WHERE clause") sql/DataManipulationandQueryingGroup -.-> sql/group_by("GROUP BY clause") sql/DataManipulationandQueryingGroup -.-> sql/subqueries("Subqueries") subgraph Lab Skills mysql/use_database -.-> lab-301317{{"国家国民生产总值和人口查询"}} sql/select -.-> lab-301317{{"国家国民生产总值和人口查询"}} sql/insert -.-> lab-301317{{"国家国民生产总值和人口查询"}} mysql/select -.-> lab-301317{{"国家国民生产总值和人口查询"}} mysql/source -.-> lab-301317{{"国家国民生产总值和人口查询"}} sql/create_table -.-> lab-301317{{"国家国民生产总值和人口查询"}} sql/where -.-> lab-301317{{"国家国民生产总值和人口查询"}} sql/group_by -.-> lab-301317{{"国家国民生产总值和人口查询"}} sql/subqueries -.-> lab-301317{{"国家国民生产总值和人口查询"}} 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并切换到world数据库:
MariaDB [None]> SOURCE /home/labex/project/world.sql;
MariaDB [world]>

查询国民生产总值(GNP)高于法国的国家的GNP和人口

在本步骤中,你将学习如何编写SQL查询,以检索国民生产总值高于法国的国家的名称、GNP和人口。

  1. 打开getGNP.sql文件
  2. getGNP.sql文件中,添加以下SQL查询:
SELECT Name, GNP, Population
FROM country
WHERE GNP > (SELECT GNP FROM country WHERE Name = 'France');

此查询首先使用子查询检索法国的GNP,然后选择GNP高于法国GNP的国家的名称、GNP和人口。

运行SQL脚本

在本步骤中,你将学习如何在MySQL中运行SQL脚本。

  1. 在MySQL提示符下,运行SQL脚本:
MariaDB [world]> SOURCE /home/labex/project/getGNP.sql;

这将执行getGNP.sql文件中的SQL查询,并在MySQL提示符中显示结果。

输出应类似于以下内容:

+---------------+------------+------------+
| Name          | GNP        | Population |
+---------------+------------+------------+
| 德国          | 2133367.00 |   82164700 |
| 日本          | 3787042.00 |  126714000 |
| 美国          | 8510700.00 |  278357000 |
+---------------+------------+------------+
3 rows in set (0.001 sec)

恭喜!你已成功完成该项目。

✨ 查看解决方案并练习

总结

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