Основы работы с базами данных



Использование запросов - часть 2


Для нашего примера выбираем из таблицы SPISOK все поля, кроме DATA_P и N_PASP, из таблицы OCENKI - первые 4 поля и 2 поля таблицы PREDM (рис. 7.30.).

Выбор полей в Мастере запросов

Рис. 7.30.  Выбор полей в Мастере запросов

На шаге 2 ("подробный или итоговый отчет") выбираем подробный отчет. На последнем шаге 3 задаем название запроса Математика и выберем вариант Изменить макет запроса, после чего нажимаем кнопку Готово. Запрос открывается в конструкторе запросов, его вид показан на рис. 7.31.

Конструктор запросов

увеличить изображение
Рис. 7.31.  Конструктор запросов

В верхней части Конструктора запросов показаны таблицы, используемые для отбора данных и связи между ними, в нижней части - таблица для выбора полей, группировки данных (если строки "Групповые операции" нет, нужно выбрать эту команду в главном меню Microsoft Access в пункте "Вид"), задания сортировки и условий отбора.

Модифицируем запрос для задания условия отбора данных и упорядочения студентов по их фамилии. Для этого в колонке поля FIO зададим сортировку по возрастанию, для поля SEMESTR зададим условие отбора 1 (первый семестр), для поля BALL зададим условие 5 и для поля PREDMET зададим условие "математика". Если в условии отбора написать текст в квадратных скобках, при выполнении запроса появится окно для ввода этого параметра. Например, если для поля PREDMET в условии написать Задайте предмет, можно будет использовать один и тот же запрос для отбора данных по разным предметам.

Можно также убрать галочки у тех полей, которые вы не хотите показывать на экране.

Сохраним запрос и посмотрим его текст в режиме SQL (Structured Query Language). Текст запроса будет выглядеть следующим образом:

SELECT Spisok.NZ AS Spisok_NZ, Spisok.FIO, Spisok.N_FCLT, Spisok.N_SPECT, Spisok.KURS, Spisok.N_GRUP, OCENKI.SEMESTR, OCENKI.N_PREDM AS OCENKI_N_PREDM, OCENKI.BALL, PREDMETS.N_PREDM AS PREDMETS_N_PREDM, PREDMETS.NAME_P FROM Spisok INNER JOIN (PREDMETS INNER JOIN OCENKI ON PREDMETS.N_PREDM = OCENKI.N_PREDM) ON Spisok.NZ = OCENKI.NZ WHERE (((OCENKI.SEMESTR)=1) AND ((OCENKI.BALL)="5") AND ((PREDMETS.NAME_P)="математика")) ORDER BY Spisok.FIO;




Содержание  Назад  Вперед