Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Выбор данных из одной таблицы



 

В режиме таблицы доступны разные операции над данными – просмотр, сортировка, фильтрация и т.д., однако достаточно часто приходится проводить вычисления или просматривать данные из нескольких таблиц. Отобрать нужные данные можно с помощью запроса.

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

Чтобы открыть окно нового запроса в режиме конструктора, в окне базы данных перейдите на вкладку ЗАПРОС и выберите СОЗДАНИЕ ЗАПРОСА В РЕЖИМЕ КОНСТРУКОРА. На рисунке показан запрос, открытый в режиме конструктора. В верхней части окна запроса находятся таблицы, включенные в запрос, а в нижней части – бланк запроса (бланк QBE (Query By Example – запрос по образцу)). Каждый столбец бланка представляет собой одно поле, используемое в запросе.

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

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

В третьей строке бланка можно указать, нужно ли выполнять сортировку по выбранному полю.

Флажки в строке бланка ВЫВОД НА ЭКРАН отвечают за вывод полей в наборе записей. По умолчанию Access выводит на экран все поля, включенные в бланк запроса. Однако некоторые поля включаются в запрос только для отбора нужных записей, а выводить их в наборе записей нет необходимости. Чтобы исключить такое поле из набора записей, снимите флажок в строке ВЫВОД НА ЭКРАН.

Для ввода условия отбора записей используется строка УСЛОВИЕ ОТБОРА и строки ИЛИ.

 

Первым шагом при создании запроса является выбор полей, включаемых в набор записей. Это можно сделать несколькими способами: перетащить поле в нужный столбец бланка из таблицы в верхней части окна запроса или определить поле, выбрав в бланке запроса в поле ИМЯ ТАБЛИЦЫ нужную таблицу, а в поле ПОЛЕ выбираемое поле.

После того, как все необходимые поля включены в запрос, необходимо закрыть окно конструктора и сохранить запрос. Исполнить запрос можно щелкнув дважды по названию запроса.

 

 

Ввод условий отбора.

 

Ввод условия отбора в запросе аналогичен заданию условия на значение для поля таблицы. Если Вы хотите отобрать записи с конкретным значением поля, введите его в ячейку УСЛОВИЕ ОТБОРА этого поля. Текстовое значение, используемое в качестве условия отбора, должно быть заключено в кавычки. Если Вас интересует несколько значений, введите их в условие отбора, разделяя логическим оператором Or. В строке УСЛОВИЯ ОТБОРА можно задать выражения для значений, которые меньше (< ),, больше или равны (> =) или не равны (< > ) некоторому значению.

 

Многотабличные запросы

В окне базы данных перейдите на вкладку ЗАПРОСЫ и выберите СОЗДАНИЕ ЗАПРОСА В РЕЖИМЕ КОНСТРУКОРА. Access откроет окно нового запроса и выведет на экран окно диалога ДОБАВЛЕНИЕ ТАБЛИЦЫ. Это окно диалога позволяет выбрать таблицы и запросы, которые будут базовыми для нового запроса. Для выполнения п.2 задания в бланк запроса необходимо включить поле Название таблицы Магазин, поле Название таблицы Товар, поля Количество и Цена таблицы Наличие.

 

 

Вычисляемые поля.

Можно выполнять вычисления с любыми полями таблицы и сделать вычисляемое выражение новым полем в наборе записей. Для этого можно использовать встроенные функции Access, а также арифметические операции над полями таблицы. Вычисляемое поле может содержать также результат конкатенации (объединения) текстовых полей или строковых (текстовых). констант.

В выражениях можно использовать следующие операторы:

· + Складывает два арифметических выражения.

· - Вычитает из первого арифметического выражения второе.

· * Перемножает два арифметических выражения.

· / Делит первое арифметическое выражение на второе.

· \ Округляет два арифметических выражения и делит первое на второе. Результат округляет до целого.

· ^ Возводит первое арифметическое выражение в степень, задаваемую вторым арифметическим выражением.

· MOD Округляет два арифметических выражения, делит первое на второе и возвращает остаток.

· & Объединяет две строки.

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

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

 

 

Например, для создания запроса для вычисления стоимости товаров в магазине, необходимо открыть в первом списке папку Таблицы. Выбрать таблицу Наличие (во втором списке отобразятся все поля таблицы Наличие). Во втором списке выбрать поле Количество и нажать кнопку Вставить. Затем нажать кнопку * (умножить). Во втором списке выбрать поле Цена и нажать кнопку Вставить. Окно Построителя выражений будет выглядеть следующим образом.

 

 

Нажать кнопку ОК. При этом Access помещает перед введенным выражением стандартное имя с двоеточием Выражение1:. В бланке запроса необходимо заменить название этого поля на Стоимость.

Итоговые запросы.

 

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

 

Итоговые функции Access

 

Sum Вычисляет сумму всех значений заданного поля в каждой группе. Используется только для числовых или денежных полей.
Avg Вычисляет среднее арифметическое всех значений заданного поля в каждой группе. Используется только для числовых или денежных полей.
Min Возвращает наименьшее значение, найденное в этом поле внутри каждой группы. Для числовых полей возвращает наименьшее значение. Для текстовых полей – наименьшее из символьных значений независимо от регистра.
Max Возвращает наибольшее значение, найденное в этом поле внутри каждой группы. Для числовых полей возвращает наибольшее значение. Для текстовых полей – наибольшее из символьных значений независимо от регистра.
Count Возвращает число записей, в которых значения данного поля отличны от Null.
StDev Вычисляет стандартное отклонение всех значений заданного поля в каждой группе. Используется только для числовых или денежных полей.
Var Вычисление дисперсию значений данного поля в каждой группе. Используется только для числовых или денежных полей.
First Возвращает первое значение поля в группе.
Last Возвращает последнее значение поля в группе.

 


Поделиться:



Популярное:

Последнее изменение этой страницы: 2016-08-31; Просмотров: 802; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.013 с.)
Главная | Случайная страница | Обратная связь