Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Access2.docx
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
8 Мб
Скачать
☆

2). Отобразите список преподавателей, ведущих дисциплину Информатика.

- перейти на вкладку Создание → Запросы → Конструктор запросов;

- Добавьте все три таблицы в поле запроса;

- Добавьте в поле отбора Фамилия, Имя, Отчество преподавателя из таблицы Преподаватели, Название из таблицы Предметы;

- в условии отбора под Названием укажите – «Информатика»:

- Затем нажмите на вкладке Работа с запросами → Результаты → Выполнить:

- Запрос вывел нам 2 преподавателей, ровно столько раз, в скольких группах они ведут.

- Чтобы данные не дублировались, необходимо перейти в режим SQL

- На экране отобразился наш запрос на языке программирования SQL.

SELECT Преподаватели.Фамилия, Преподаватели.Имя, Преподаватели.Отчество, Предметы.Название

FROM Преподаватели INNER JOIN (Предметы INNER JOIN Нагрузка ON Предметы.[Код предмета] = Нагрузка.[Код предмета]) ON Преподаватели.[Код преподавателя] = Нагрузка.[Код преподавателя]

WHERE (((Предметы.Название)="Информатика"));

-Чтобы исправить дублирование необходимо использовать ключевое слово DISTINCT:

SELECT DISTINCT Преподаватели.Фамилия, Преподаватели.Имя, Преподаватели.Отчество, Предметы.Название

FROM Преподаватели INNER JOIN (Предметы INNER JOIN Нагрузка ON Предметы.[Код предмета] = Нагрузка.[Код предмета]) ON Преподаватели.[Код преподавателя] = Нагрузка.[Код преподавателя]

WHERE (((Предметы.Название)="Информатика"));

- Затем нажмите на вкладке Работа с запросами → Результаты → Выполнить:

- Сохраните запрос под именем – Запрос 6.

3). Запрос с параметром. Отобразите номер группы, название предмета, который ведет тот преподаватель, которого пользователь вводит с помощью клавиатуры.

- перейти на вкладку Создание → Запросы → Конструктор запросов;

- Добавьте все три таблицы в поле запроса; поле Фамилия на экран не будет выводиться, поэтому галочку убираем:

- В условие отбора под Фамилией вписываем: [Введите фамилию преподавателя:] (текст вводите обязательно в квадратных скобках).

- Затем нажмите на вкладке Работа с запросами → Результаты → Выполнить:

- в появившемся окне введите фамилию любого преподавателя (Например, Перкусов):

- ОК;

- Сохраните запрос под именем – Запрос 7.

4). Запрос с параметром. Отобразите список преподавателей, название предмета и количество часов по данному предмету, по группе, которую введет пользователь с помощью клавиатуры.

- перейти на вкладку Создание → Запросы → Конструктор запросов;

- Добавьте все три таблицы в поле запроса; поле Номер группы на экран не будет выводиться, поэтому галочку убираем:

- В условие отбора под Фамилией вписываем: [Введите номер группы:] (текст вводите обязательно в квадратных скобках).

- Затем нажмите на вкладке Работа с запросами → Результаты → Выполнить:

- в появившемся окне введите номер любой группы (Например, 9 ОТ):

- ОК.

- Сохраните запрос под именем – Запрос 8.

  1. Шаг 3. Редактирование запроса в SQL.

1). Отобразите список преподавателей, название предмета и количество часов. Условие отбора: отобразите фамилии по алфавиту, а имя и отчество как инициалы.

- для начала создадим запрос без условия, для этого можете использовать любой из предложенных выше способов создания запросов (режим Мастера или Конструктора);

- Для отбора возьмем поля Название и Количество часов из таблицы Предметы;

- Сохраните запрос под именем – Запрос 9;

- Затем перейдите в режим SQL:

SELECT Предметы.[Название], Предметы.[Количество часов]

FROM Предметы;

- чтобы выполнить условие необходимо:

во-первых, изменить первую строку текста:

SELECT Предметы.[Название], Предметы.[Количество часов], [Фамилия] & " " & Left([Имя],1) & "." & Left([Отчество],1) & "." AS Преподаватели

FROM Преподаватели INNER JOIN (Предметы INNER JOIN Нагрузка ON Предметы.[Код предмета] = Нагрузка.[Код предмета]) ON Преподаватели.[Код преподавателя] = Нагрузка.[Код преподавателя];

- Затем нажмите на вкладке Работа с запросами → Результаты → Выполнить:

во-вторых, добавить еще один оператор ORDER BY и скопировать новую введенную строку:

SELECT Предметы.[Название], Предметы.[Количество часов], [Фамилия] & " " & Left([Имя],1) & "." & Left([Отчество],1) & "." AS Преподаватели

FROM Преподаватели INNER JOIN (Предметы INNER JOIN Нагрузка ON Предметы.[Код предмета] = Нагрузка.[Код предмета]) ON Преподаватели.[Код преподавателя] = Нагрузка.[Код преподавателя]

ORDER BY [Фамилия] & " " & Left([Имя],1) & "." & Left([Отчество],1) & ".";

- Затем нажмите на вкладке Работа с запросами → Результаты → Выполнить:

Произвести сортировку можно и другим способом:

- после того, как вы сократили имя и отчество до инициалов, перейдите в режим Конструктора и в строке Сортировка выберите «по возрастанию»;

- В итоге получаем аналогичный результат.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]