查询指定 ID 的城市信息

SQLSQLBeginner
立即练习

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

简介

在这个项目中,你将学习如何从 MySQL 数据库中查询和检索信息。具体来说,你将学习如何访问 MySQL 数据库、导入现有的数据库,以及执行 SQL 查询以根据城市 ID 检索有关城市的信息。

👀 预览

MariaDB [world]> SOURCE /home/labex/project/getTen.sql;
+----+----------------+-------------+---------------+------------+
| ID | 名称           | 国家代码      | 地区          | 人口       |
+----+----------------+-------------+---------------+------------+
|  1 | 喀布尔         | AFG         | 喀布尔        |    1780000 |
|  2 | 坎大哈         | AFG         | 坎大哈        |     237500 |
|  3 | 赫拉特         | AFG         | 赫拉特        |     186800 |
|  4 | 马扎里沙里夫     | AFG         | 巴尔赫        |     127800 |
|  5 | 阿姆斯特丹       | NLD         | 北荷兰省      |     731200 |
|  6 | 鹿特丹         | NLD         | 南荷兰省      |     593321 |
|  7 | 海牙           | NLD         | 南荷兰省      |     440900 |
|  8 | 乌得勒支         | NLD         | 乌得勒支省     |     234323 |
|  9 | 埃因霍温       | NLD         | 北布拉班特省   |     201843 |
| 10 | 蒂尔堡         | NLD         | 北布拉班特省   |     193238 |
+----+----------------+-------------+---------------+------------+
10 rows in set (0.000 sec)

🎯 任务

在这个项目中,你将学习:

  • 如何使用 sudo 命令无密码访问 MySQL
  • 如何将现有的 SQL 数据库导入 MySQL
  • 如何编写和执行 SQL 查询以根据 ID 检索城市信息

🏆 成果

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

  • 理解如何访问和使用 MySQL 数据库
  • 编写 SQL 查询以从数据库中检索特定数据
  • 应用你的 SQL 知识解决实际的数据检索问题

访问 MySQL 并导入数据库

在这一步中,你将学习如何使用 sudo 命令无密码访问 MySQL 并导入 world.sql 数据库。

  1. 打开终端并启动 MySQL 服务:
sudo service mysql start
  1. 使用 sudo 命令访问 MySQL:
sudo mysql
  1. world.sql 数据库导入 MySQL:
MariaDB [(none)]> SOURCE /home/labex/project/world.sql;

这会将 world 数据库导入到你的 MySQL 环境中。

查询城市信息

在这一步中,你将学习如何从 city 表中查询 ID 小于或等于 10 的城市的所有信息。

  1. 打开 getTen.sql 文件并添加以下 SQL 查询:
SELECT * FROM city
WHERE ID <= 10;

此查询将检索 ID 小于或等于 10 的城市的所有信息。

  1. 保存 getTen.sql 文件。
  2. 在 MySQL 中运行 getTen.sql 脚本:
MariaDB [world]> SOURCE /home/labex/project/getTen.sql;

这将执行 SQL 查询并显示结果。

验证结果

在这一步中,你将验证上一步中执行的 SQL 查询的结果。

getTen.sql 脚本的输出应类似于以下内容:

+----+----------------+-------------+---------------+------------+
| ID | 名称           | 国家代码      | 地区          | 人口       |
+----+----------------+-------------+---------------+------------+
|  1 | 喀布尔         | AFG         | 喀布尔        |    1780000 |
|  2 | 坎大哈         | AFG         | 坎大哈        |     237500 |
|  3 | 赫拉特         | AFG         | 赫拉特        |     186800 |
|  4 | 马扎里沙里夫     | AFG         | 巴尔赫        |     127800 |
|  5 | 阿姆斯特丹       | NLD         | 北荷兰省      |     731200 |
|  6 | 鹿特丹         | NLD         | 南荷兰省      |     593321 |
|  7 | 海牙           | NLD         | 南荷兰省      |     440900 |
|  8 | 乌得勒支         | NLD         | 乌得勒支省     |     234323 |
|  9 | 埃因霍温       | NLD         | 北布拉班特省   |     201843 |
| 10 | 蒂尔堡         | NLD         | 北布拉班特省   |     193238 |
+----+----------------+-------------+---------------+------------+
10 rows in set (0.000 sec)

此输出显示了挑战中要求的 ID 小于或等于 10 的城市的信息。

✨ 查看解决方案并练习

总结

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