Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка по Access 2003.doc
Скачиваний:
4
Добавлен:
26.04.2019
Размер:
744.96 Кб
Скачать

3.1. Сортировка записей

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

Создадим запрос, выдающий список покупателей, упорядоченный по фамилиям в алфавитном порядке. Для этого выберем в окне базы данных закладку Запросы и щёлкнем по пиктограмме Создание запроса в режиме конструктора.

Откроется окно Добавление таблицы. Выберем из предложенного списка таблицу ПОКУПАТЕЛЬ, нажмем кнопки Добавить и Закрыть. Откроется окно Запрос1: запрос на выборку. Оно состоит из двух частей. В верхней части представлены таблицы, используемые в запросе, возможно, вместе с их связями. Нижняя часть называется Бланк запросов QBE.

В начале списка полей таблицы ПОКУПАТЕЛЬ расположено поле *. Оно представляет собой все поля таблицы, вместе взятые. Ниже расположены поля таблицы по отдельности. Отбуксируем поле * из верхней части окна в нижнюю левой кнопкой мыши (таким образом, в запросе будут участвовать все поля таблицы ПОКУПАТЕЛЬ) и опустим в первой колонке в строке Поле. Во вторую колонку нижней части перетащим поле Фамилия ИО. Этого же эффекта можно добиться, щелкнув левой кнопкой мыши по пустой ячейке Поле и выбрав нужное поле из предложенного списка полей.

Далее щелкнем левой кнопкой мыши во второй колонке в поле строки Сортировка. Справа в строке появится кнопка , при нажатии на которую будет предложен порядок сортировки. Выберем по возрастанию. Осталось отменить Вывод на экран в рассматриваемом столбце (чтобы поле Фамилия ИО не выводилось в запросе дважды), для этого отключим флажок , щелкнув по нему левой кнопкой мыши. Теперь можно просмотреть результат выполнения запроса, нажав пиктограмму Выполнить или выбрать в меню пункты Запрос / Запуск. В результате на экране появится знакомая нам таблица ПОКУПАТЕЛЬ, в которой фамилии будут упорядочены по алфавиту.

Закроем окно запроса. Access предложит нам сохранить запрос, сохраним его с именем “Список покупателей”.

Создать запрос “Список товаров” для таблицы ТОВАР с полями Наименование, Цена, отсортированный по второму полю в порядке убывания.

3.2. Запросы с критериями выбора

Д

Знак операции

Название

<

меньше

<=

меньше или равно

=

равно

<>

не равно

>=

больше или равно

>

больше

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

Числа сравниваются с помощью операторов отношений. Если знак операции в условии не ставится, то подразумевается операция “равно”. Даты сравниваются так же; даты-константы заключаются в знаки #, например: >#10.12.01#. Результатом сравнения будет логическое значение: TrueИстина или FalseЛожь.

Во многих случаях необходимо комбинировать отношения между собой. Например, для проверки выполнения неравенства a< x <b одних отношений недостаточно. Используются логические операторы: NotНЕ; AndИ; OrИли (есть и другие логические операторы, см. Справку в Access). Указанное выше неравенство записывается как “a< x And x <b”. Его же можно записать как “x Between a And b” (здесь используется оператор Betweenмежду).

Для поиска строк, удовлетворяющих условию совпадения с условием поиска (со всей строкой или ее частью), удобен оператор Like (переводится как «подобный»). Он имеет вид: Like Образец. В образце можно использовать символы-заменители: * – для произвольного количества символов и ? – для одного символа. Так, чтобы найти все фамилии, начинающиеся на букву П, в строке условие отбора поля Фамилия ИО пишется условие: Like “П*”.

Создадим запрос “Товары дороже чем” для таблицы ТОВАР с полями Наименование, Цена, отсортированный по полю Наименование, выводящий список товаров дороже 50 руб. Для этого после выбора таблицы ТОВАР перетащим в бланк запроса QBE указанные выше поля. Выберем сортировку по возрастанию в первой колонке, во второй колонке в строке Условие отбора введем условие: > 50. Выполним запрос, получим требуемую таблицу. Сохраним его с указанным выше именем.

Для ввода условий отбора в нижней части окна предлагаются несколько строк. Условия в одном столбце воспринимаются как условия, соединенные операцией Or. Если условия записаны в нескольких столбцах в одной строке, то они будут восприниматься как условия, соединенные операцией And, если в разных строках – то как операция Or.

  1. Создать запрос “Покупатели на букву П” для таблицы ПОКУПАТЕЛЬ с полями Фамилия, Код покупателя, Телефон, Адрес. Выбрать покупателей, фамилия которых начинается на букву “П” (Условие отбора: “П*“ или Like “П*”).

  2. Создать запрос “Продажи за последние шесть месяцев” для таблицы ЗАКАЗ, содержащий все поля таблицы (Условие отбора: >=DATE()-183. Здесь используется системная функция DATE(), возвращающая сегодняшнюю дату. Число 183 – это половина дней одного года).

  3. Создать запрос "Покупки покупателя с отбором по двум столбцам" для таблицы ЗАКАЗ, в котором отберем записи для покупателя с кодом 2 и его покупки за последний месяц.