Введение
В этом проекте вы научитесь выполнять запрос на равное соединение таблиц city, country и countrylanguage в MySQL. Цель - получить название города, соответствующее название страны и язык из этих таблиц.
👀 Предварительный просмотр
MariaDB [world]> SOURCE /home/labex/project/getCountryNameAndLanguage.sql;
+----------------+-------------+------------+
| CityName | CountryName | Language |
+----------------+-------------+------------+
| Ораньестад | Аруба | Нидерландский |
| Ораньестад | Аруба | Английский |
| Ораньестад | Аруба | Папьяменто |
| Ораньестад | Аруба | Испанский |
| Кабул | Афганистан | Балучи |
| Кандагар | Афганистан | Балучи |
| Херат | Афганистан | Балучи |
| Мазар-е-Шариф | Афганистан | Балучи |
| Кабул | Афганистан | Дари |
| Кандагар | Афганистан | Дари |
+----------------+-------------+------------+
10 rows in set (0.001 sec)
🎯 Задачи
В этом проекте вы научитесь:
- Как обращаться к MySQL с использованием команды
sudoбез пароля - Как импортировать данные из скрипта
world.sqlв MySQL - Как писать запрос на равное соединение для получения нужной информации из таблиц
- Как ограничить результаты запроса первыми 10 строками
🏆 Достижения
После завершения этого проекта вы сможете:
- Разобраться в концепции SQL-совмещений и как эффективно их использовать
- Получать данные из нескольких таблиц в реляционной базе данных
- Применять SQL-запросы для фильтрации и ограничения результатов по необходимости
- Получить практический опыт работы с базами данных MySQL
Доступ к MySQL и импорт данных
В этом шаге вы научитесь обращаться к MySQL с использованием команды sudo без пароля и импортировать данные из предоставленного скрипта world.sql в MySQL.
- Запустите службу MySQL:
sudo service mysql start
- Подключитесь к MySQL:
sudo mysql
- Импортируйте данные из скрипта
world.sql:
MariaDB [(none)]> SOURCE /home/labex/project/world.sql;
Выполнить запрос на соединение
В этом шаге вы научитесь выполнять запрос на равное соединение, чтобы получить название города, соответствующее название страны и язык из таблиц city, country и countrylanguage.
- Откройте файл
getCountryNameAndLanguage.sql. - Добавьте следующий код в файл
getCountryNameAndLanguage.sql:
SELECT ci.Name AS CityName, co.Name AS CountryName, col.Language
FROM city AS ci
JOIN country AS co ON ci.CountryCode = co.Code
JOIN countrylanguage AS col ON co.Code = col.CountryCode
LIMIT 10;
Этот запрос выполняет равное соединение между таблицами city, country и countrylanguage и ограничивает результаты первыми 10 строками. Вывод запроса включает заголовки CityName, CountryName и Language.
Запустить запрос
В этом шаге вы научитесь запускать скрипт getCountryNameAndLanguage.sql в MySQL.
- В提示符 MySQL выполните следующую команду для выполнения скрипта:
MariaDB [world]> SOURCE /home/labex/project/getCountryNameAndLanguage.sql;
Это выполнит запрос и выведет результаты в提示符 MySQL.
Вывод должен выглядеть примерно так:
+----------------+-------------+------------+
| CityName | CountryName | Language |
+----------------+-------------+------------+
| Ораньестад | Аруба | Нидерландский |
| Ораньестад | Аруба | Английский |
| Ораньестад | Аруба | Папьяменто |
| Ораньестад | Аруба | Испанский |
| Кабул | Афганистан | Балучи |
| Кандагар | Афганистан | Балучи |
| Херат | Афганистан | Балучи |
| Мазар-е-Шариф | Афганистан | Балучи |
| Кабул | Афганистан | Дари |
| Кандагар | Афганистан | Дари |
+----------------+-------------+------------+
10 rows in set (0.001 sec)
Поздравляем! Вы успешно завершили проект.
Резюме
Поздравляем! Вы завершили этот проект. Вы можете практиковаться в более многих лабораторных работах в LabEx, чтобы улучшить свои навыки.
