Опубликован: 30.10.2006 | Уровень: для всех | Доступ: свободно
Лекция 7:

Поиск и отбор информации

< Лекция 6 || Лекция 7: 1234 || Лекция 8 >

Фильтрация записей в таблице

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

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

Совет. Фильтрация записей осуществляется с помощью команды Фильтр (Filter) в меню Записи (Records), кнопок на панели инструментов и команд в контекстном меню. Доступ к этим командам зависит от конкретной ситуации.
GardenCo

В этом упражнении вы воспользуетесь несколькими способами фильтрации записей. В качестве рабочей будет использоваться папка Office XP SBS\Access\Chap12\FilterDS. Выполните следующие шаги.

  1. Откройте базу данных GardenCo, расположенную в рабочей папке.
  2. Откройте таблицу Клиенты в режиме таблицы.
  3. Щелкните на значении "Бойсе" в поле Город, а затем щелкните на кнопке Фильтр по выделенному (Filter By Selection). В таблице из 109 записей останутся 2, поскольку в Бойсе живут только два клиента.
    Важно. При фильтрации таблицы, записи, не отвечающие условиям отбора, не удаляются, а просто перестают отображаться.
  4. Щелкните на кнопке Удалить фильтр (Remove Filter), чтобы снова отобразить все записи таблицы.
  5. Отобразите всех клиентов, имеющих почтовый индекс, начинающийся с символов "V3F". Для этого найдите в таблице запись с таким индексом, выделите символы "V3F", а затем щелкните на кнопке Фильтр по выделенному (Filter By Selection). В таблице останутся только две записи, имеющие почтовые индексы, начинающиеся с "V3F".
  6. Щелкните на кнопке Удалить фильтр (Remove Filter).
  7. Если таблица слишком велика, чтобы искать в ней запись, содержащую "V3F" в почтовом индексе, можно воспользоваться контекстным меню. Щелкните правой кнопкой мыши на любом почтовом индексе, в контекстном меню щелкните в поле Фильтр для (Filter For), введите V3F* и нажмите на клавишу (Enter). Звездочка (*) является заменителем символов и означает, что нужно найти все вхождения почтового индекса, начинающие с "V3F".
  8. Чтобы отобразить клиентов, живущих вне Соединенных Штатов, удалите текущий фильтр, щелкните правой кнопкой мыши в поле Страна, которое содержит значение "США", и щелкните на команде Исключить выделенное (Filter Excluding Selection) в контекстном меню. В таблице отобразятся клиенты из других стран (в данном случае из Канады).

    Заменитель символов

    Если точное значение критерия отбора неизвестно, можно воспользоваться заменителями символов (wildcard characters). Наиболее распространенные из них представлены в следующей таблице:

    Символ Назначение Пример
    * Заменяет любое число символов Lname = Co* возвращает значения типа Colman и Conroy
    ? Заменяет один символ Fname = eri? возвращает значения типа Eric и Erik
    # Заменяет одну цифру ID = 1## возвращает все значения от 100 до 199
  9. Чтобы поэкспериментировать с еще одним способом фильтрации, удалите фильтр, сохраните и закройте таблицу Клиенты, а затем откройте таблицу Заказы в режиме таблицы.
  10. Чтобы отобразить все заказы, принятые Майклом Эмони 23 января, в поле Код сотрудника щелкните правой кнопкой мыши на 6 (код Эмони Майкла) и щелкните на команде Фильтр по выделенному (Filter By Selection) в контекстном меню.
  11. Щелкните правой кнопкой мыши в поле ДатаРазмещения, содержащем значение 1/23/01, и снова щелкните на команде Фильтр по выделенному (Filter By Selection) в контекстном меню. В таблице останутся только заказы, сделанные Майклом 23 января. Можно усложнить фильтр, добавив условие отбора по другому полю, или отсортировать результаты фильтрации. Для этого щелкните в поле сортировки, а затем щелкните на одной из кнопок Сортировка (Sort).
    Совет. Отобрав и упорядочив нужную информацию, можно отобразить результаты в виде формы или запроса. Щелкните на кнопке Новый объект (New Object) на панели инструментов и следуйте указаниям.
  12. Удалите фильтры, щелкнув на кнопке Удалить фильтр (Remove Filter).
  13. Сохраните и закройте таблицу Заказы.
  14. Закройте базу данных.
Совет. Команды фильтрации позволяют фильтровать записи таблицы и при работе с формой. Особенно полезной может оказаться команда Фильтр для (Filter For), поскольку не требует отображения выделяемого значения в поле формы.
< Лекция 6 || Лекция 7: 1234 || Лекция 8 >
Ксения Кострова
Ксения Кострова
Татьяна Романова
Татьяна Романова

Подскажите, пожалуйста, можно ли как-то в базе, состоящей из достаточно большого количества таблиц, определить те ячейки, которым присвоено значение "null". При обновлении базы постоянно всплывает ошибка, что 7ми полям присвоено данное значение. А как найти и "обезвредить" не могу разобраться. Заранее спасибо

 

Валерия Карпенко
Валерия Карпенко
Россия, Тверская область