Выражение запросов реляционного исчисления и алгебры на простом английском языке для пассажиров, полетов и поездок в экономику
У меня есть это заявление:
И этот:
Как мне конвертировать их в простой английский?
Вот степень моего понимания:
Для первого, я думаю, что он выбирает p_id, где существуют f_no1, f_date и f_no2 из объединенных таблиц Flight и Trip.
Второй сбивает с толку; Я знаю, что он делает, но я не знаю, как преобразовать его в простой английский. Естественно объединить таблицы поездок, рейсов и пассажиров, а затем выбрать строки из этой итоговой таблицы, в которой класс является бизнесом. Из строк, в которых класс является бизнесом, он затем выбирает только строки, конечным пунктом назначения которых является Лос-Анджелес, а затем из этих строк выбирает идентификатор и имя пассажира. Так что я думаю, что английский перевод будет выглядеть примерно так: "Получить имя и идентификатор пассажира, направляющегося в Лос-Анджелес в бизнес-классе", но я не уверен.
1 ответ
Реляционное исчисление
Вы на правильном пути.
- Свободная переменная:
p_id
(определяет вашу структуру вывода) - Ограниченные переменные:
f_no1
,f_no2
,f_date
Вы можете видеть, что есть две линии, которые выглядят очень похожими, но значительно различаются. Каждая строка объединяет информацию между двумя отношениями с целью найти значения, которые удовлетворяют условиям.
Обратите внимание, что f_date
а также p_id
переменные одинаковы в обеих строках, тогда как f_no
отличается. Это означает, что есть два отдельных рейса, которые выполняются в один и тот же день с одним и тем же пассажиром на обоих. Первая строка указывает путешествие из Рапануи в Папеэте, а вторая строка указывает путешествие из Папеэте в Окленд. Обе эти поездки также должны удовлетворять требованию путешествовать через эконом класс.
Соберите эту информацию вместе, этот запрос запрашивает p_id
где это p_id
путешествует из Рапнуи в Окленд через Папеэте в один и тот же день, причем оба они в экономическом классе.
Реляционная алгебра
У вас там почти все есть. Запрос выбирает p_id и p_name всех пассажиров, которые прилетели в Лос-Анджелес в бизнес- классе.