Найти в Дзене
Налейте аналитику

Разбор задачи SQL №3

Напомню, что в одной из предыдущих статей я начал разбирать задачи из этого онлайн-тренажера. Тренажер содержит 66 задач, но разбирать их по-порядку я не буду, какие-то буду определенно пропускать. Так, Задача №1 и Задача №2 не отличаются ничем, кроме таблицы, к которой происходит запрос. Поэтому сразу перепрыгиваем на третье упражнение.

Сегодня разберем задачу №3. Вывести все рейсы, совершенные из Москвы.

-2

Где искать рейсы? Думаю, в таблице Trip. Рядом с постановкой задачи в тренажере есть подсказка "Поля в результирующей таблице: *". Значок * означает "все поля". Давайте рассмотрим структуру самого простого SQL- запроса (вывести набор полей из таблицы с условиями) :


SELECT

поле1,

...
полеN
[если нужны все поля, то перечисление заменяется значком *]

FROM
table

WHERE

условие1 AND/OR

...

условиеN

По условию задачи необходимо вывести все рейсы из москвы. Очевидно, пункт отправления лежит в таблице Trip в поле town_from. Но как нам узнать, как в этой таблице обозначается Москва? Может, "moscow", может, "MOS" или "msc"? Один из способов - написать простой запрос к таблице Trip и найти там Москву:

SELECT * FROM Trip LIMIT 10

В этом случае LIMIT 10 в конце ограничит выдачу 10-ю записями, что сильно ускорит выполнение подобного запроса к большим таблицам.

-3

Видим, что Москва в поле town_from имеет значение "Moscow". Полдела сделано, осталось написать запрос, чтобы Вывести все рейсы, совершенные из Москвы.

SELECT *

FROM Trip
WHERE

town_from = 'Moscow'

Спасибо за прочтение, подписывайтесь на телеграм )




Наука
7 млн интересуются