Запрос 3. Получить список всех абитуриентов, живущих в Перми и имеющих медали. В списке указать фамилии, номера школ и факультеты, на которые поступают абитуриенты. Отсортировать список в алфавитном порядке по фамилиям.
Для реализации данного запроса информация должна извлекаться из трех таблиц: «Анкеты», «Факультеты», «Абитуриенты». Запишем команду на гипотетическом языке запросов:
.выбор АНКЕТЫ (таблица).ФАМИЛИЯ, Анкеты(таблица).УЧ_ЗАВЕДЕНИЕ, Факультеты (таблица).ФАКУЛЬТЕТ для Анкеты. ГОРОД= "Пермь" и Абитуриенты. МЕДАЛЬ=ДА сортировать Анкеты. ФАМИЛИЯ по возрастанию
Здесь снова используются комбинированные имена полей, включающие имя таблицы и имя поля, разделенные точкой.
Результатом выполнения данного запроса будет табл. 9: Таблица 9. Пермяки, имеющие медали
Фамилия
Учебное заведение
Факультет
Васильева
ПТУ №8
Экономический
Круг
Школа №102
Экономический
Команда на гипотетическом языке запросов выглядит так:
Значение поля «СУММА» получается путем суммирования оценок по всем экзаменам. По этому же полю можно производить сортировку. Вычисляемое поле представляется на гипотетическом языке запросов так:
<имя поля> : <выражение>
Выражение записывается по традиционным правилам для арифметических выражений, используемых в программировании и в электронных таблицах.
Выражение можно вводить как непосредственно в ячейке конструктора, так и воспользовавшись построителем выражений. Окно построителя выражений открывается щелчком по кнопке на панели инструментов.
В результате выполнения этого запроса будет получена следующая табл. 10.
Таблица 10. Суммы баллов
РЕГ НОМ
ФАМИЛИЯ
СУММА
1001
Васильева
14
1002
Быков
12
2001
Елкин
15
2002
Мухин
13
2003
Зубова
5
3001
Анохин
15
3002
Жакин
13
3003
Дикий
3
По вычисляемому полю может быть определено условие отбора. Например, если в условие отбора добавить выражение СУММА > 13, то в итоговую таблицу попадут только первые пять строк.
Вывод
В запросах можно использовать вычисляемые поля. Вычисляемое поле становится лишь элементом запроса и не включается в таблицы БД.
На вычисляемое поле можно накладывать условия отбора, производить сортировку.
Вопросы и задания
1. Что такое вычисляемое поле? Где его можно использовать?
2. Запишите команды запросов на выборку на гипотетическом языке для перечисленных ниже задач. Везде организуйте сортировку по первому полю;
а) получить список всех специальностей, на которых сдается экзамен по русскому языку;
б) получить список всех специальностей, па которых план приема больше 40 человек;
в) получить таблицу, содержащую фамилии абитуриентов, название городов, номера школ для абитуриентов, живущих не в Перми и не имеющих медалей;
г) получить таблицу, содержащую фамилии, имена, отчества и стаж работы абитуриентов, поступающих на юридический факультет;
д) получить таблицу, содержащую фамилии, специальности, года рождения для тех абитуриентов, которые родились до 1982 года.
3. Запишите команды запросов на выборку на гипотетическом языке для перечисленных ниже задач. Везде организуйте сортировку по первому полю:
а) получить таблицу, содержащую фамилии абитуриентов и средние значения оценок, полученных на экзаменах;
б) получить список лишь тех абитуриентов, у которых оценка за первый экзамен больше среднего балла за все экзамены;
в) предположим, что действует следующее правило: на экономический факультет университета принимаются те абитуриенты, у которых сумма баллов за экзамены не меньше 14; на исторический факультет — не меньше 13; на юридический факультет — не меньше 12. Получите список принятых на каждый факультет, указав факультеты, специальности, фамилии, имена, отчества. Отсортируйте список по факультету и специальности.