Создание запроса с вычисляемым полем

Предположим, что необходимо найти записи о предметах, в которых общее число часов по предмету не совпадает с суммой часов лекций и практик. Для решения этой задачи рассчитаем разность между общим числом часов по предмету и суммой часов лекций и практик. В ответ включим только те записи, для которых эта разность не равна нулю.

1. Создайте в режиме конструктора запрос на выборку для таблицы ПРЕДМЕТ. Перетащите в бланк запроса поля НП, ПР, ЛЕК, ЧАСЫ.

2. Для подсчета разности создайте вычисляемое поле в пустой ячейке строки Поле, записав выражение: [ЧАСЫ]-([ПР]+[ЛЕК])

3. Для отбора записей с ненулевым значением разности в вычисляемом поле в строку Условие отбора введите <>0.

4. После ввода выражения система по умолчанию формирует имя вычисляемого поля – выражение 1:. Это имя ставится перед формулой [ЧАСЫ]-([ПР]+[ЛЕК]). Для изменения имени установите курсор в вычисляемом поле бланка запроса и нажмите правую кнопку мыши. В контекстном меню выберите Свойства и в строку Подпись полявведите новое имя поля – ЧАСЫ не равны ПР+ЛЕК.

5. Сохраните запрос под именем – Разность часов по предмету

3.4. Конструирование запроса с функцией <Count>

Rem: Часто нужно видеть не каждую строку таблицы, а только итоговые значения по группам данных. Групповые операции позволяют выделить группы записей с одинаковыми значениями в указанных полях и использовать для некоторых полей этих групп одну из статистических функций. В Access предусматривается десять статистических функций:

Sum – сумма значений некоторого поля для группы;

Avg – среднее от всех значений поля в группе;

Max, Min – максимальное и минимальное значение поля в группе;

Count – число значений поля в группе без учета пустых значений;

StDev – среднеквадратичное отклонение от среднего значения поля в группе;

Var – дисперсия значений поля в группе;

First, Last – значение поля из первой или последней записи в группе.

Определим фактическое число студентов в группе

1. Создать в режиме конструктора запрос на выборку для таблицы СТУДЕНТ

2. Из списка таблицы СТУДЕНТ перетащить в бланк запроса поле НГ. По этому полю будет проводиться группировка

3. Перетащите в бланк запроса поле НС, по которому будет вычисляться функция Count для подсчета числа студентов группе

4. Выполните команду Вид Групповые операции. В бланке запросов появится строка Групповые операции, в которой для всех полей записано Группировка

5. Заменить слово группировка в столбце НС на Count. Для этого вызовите список и выберите эту функцию

6. Выполните запрос Запрос Запуск.

7. Замените подпись Count_НС на Фактическое число студентов. Для ввода этой подписи в бланке запроса установите курсор мыши на поле НС и нажмите правую кнопку. В контекстном меню выберите Свойства. В окне Свойства поля наберите в строке Подпись – Фактическое число студентов.

8. Сохраните запрос на выборку под именем Число студентов в группах.

3.5 Запрос с функцией <Avg>

Подсчитать средний проходной балл в группе. Сформировать запрос для таблицы СТУДЕНТ с функцией Avg для поля ПБАЛЛ.

1. Создать в режиме конструктора запрос на выборку для таблицы СТУДЕНТ.

2. Из списка таблицы СТУДЕНТ перетащить в бланк запроса поле НГ, по которому будет вычисляться функция Avg для подсчета среднего балла.

3. Выполните команду Вид Групповые операции. В бланке запросов появится строка Групповые операции, в которой для всех полей записано Группировка.

4. Заменить слово группировка в столбце ПБАЛЛ на Avg. Для этого вызовите список и выберите эту функцию.

5. Выполните запрос Запрос Запуск.

6. Замените подпись Avg_ПБАЛЛ на Средний проходной балл группы. Для ограничения точности результатов двумя знаками в окне Свойства поля в строке Формат поля – Фиксированный.

7. Сохраните запрос на выборку под именем Средний проходной балл группы.





©2015-2017 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.


ТОП 5 активных страниц!