На профессиональном уровне. Числа и специальные символы в текстовых полях
Числа и специальные символы в текстовых полях
Результат сортировки текста иногда противоречит интуитивным предположениям, особенно если в вашем текстовом поле содержатся числовые данные.
Обычно, когда сортируются два числа (например, 153 и 49), они упорядочиваются от меньшего к большему (49, 153). Но текстовая сортировка действует иначе. Когда программа Access сортирует текст, она проверяет его символ за символом, что означает сортировку чисел по первой цифре. Если первые цифры одинаковы, проверяется вторая цифра и т. д. В результате если числа 49 и 153 сортируются в алфавитном порядке, то вы получите 153, 49, поскольку 4 (первая цифра числа 49) больше 1 (первой цифры числа 153).
Жизнь становится еще интереснее, если в эту мешанину добавить знаки пунктуации и другие специальные символы. Далее приведен порядок, в котором программа Access сортирует любые символы (при стандартной сортировке по возрастанию от А до Я или от А до Z):
1. Пустые значения.
2. Пробелы.
3. Специальные символы (например, знаки пунктуации).
4. Буквы.
5. Числа.
Сортировка по нескольким полям
Если при сортировке обнаруживаются два одинаковых значения, нет способа определить порядок их следования (по отношению друг к другу). Если вы сортируете список клиентов, в котором есть два Вана Хаузера (Van Hauser), вы можете быть уверены, что сортировка по фамилии выведет их друг за другом, но неизвестно, кто будет первым, а кто вторым.
Если вы хотите узнать больше о том, как Access интерпретирует дубликаты, нужно выбрать сортировку, основанную на нескольких столбцах. Отличным примером может служить телефонная книга, в которой люди отсортированы по фамилиям, а затем по именам. Таким образом, люди с одинаковой фамилией группируются вместе и упорядочиваются в соответствии с их именами, например, следующим образом:
…
Smith, Star
Smith, Susan
Smith, Sy
Smith, Tanis
…
В таблице результаты сортировок накапливаются, что означает возможность одновременной сортировки, базирующейся на нескольких полях. Единственная сложность — правильно задать порядок сортировки. Далее перечислены необходимые действия.
1, Выберите на ленте Главная→Сортировка и фильтр→Очистить все сортировки(Ноmе →Sort & Filter →Clear All Sorts).
Программа Access вернет таблицу к исходному не отсортированному состоянию.
2. Воспользуйтесь раскрывающимся контекстным меню столбца для применения к дубликатам дополнительной сортировки.
Если нужно отсортировать телефонную книгу (абоненты упорядочены по фамилиям, а затем по именам), надо включить сортировку по полю FirstName(имя). В табл. 3.1 поясняется сортировка, которую вы видите в зависимости от типа данных.
3, Используйте контекстное раскрывающееся меню для применения сортировки первого уровня.
В случае телефонной книги — это поле LastName(фамилия).
Вы можете повторить эти шаги для выполнения сортировок по нескольким полям. Представьте, что у вас чудовищно большой набор имен, включающий людей с одинаковыми фамилиями и именами. В этом случае вы могли бы добавить третью сортировку по первой букве второго имени (или отчеству). Для применения этой сортировки следует включить сортировку в следующем порядке: Middlelnitial(первая буква второго имени), FirstName(имя), LastName(фамилия). Вы получите следующий результат:
…
Smith, Star
Smith, Susan К
Smith, Susan P
Smith, Sy
…
Фильтрация
В таблице с сотнями или тысячами записей прокрутка таблицы вперед и назад на листе данных так же успокаивает, как звук пневматической дрели в 3 часа утра. Иногда вам даже не нужно видеть все записи сразу — они лишь вызывают усталость пальцев и отвлекают от тех данных, которые вас действительно интересуют. В этом случае вам следует урезать лист данных с помощью фильтрации, оставив только интересующие вас записи.
Для фильтрации записей вы задаете условие, которому должна удовлетворять запись для того, чтобы быть включенной в лист данных. Например, интернет-магазин может выбирать пищевые продукты из полного каталога товаров, компания по доставке может искать заказы, сделанные на прошлой неделе, а служба свиданий (dating service) может выискивать холостяков, живущих отдельно от своих родителей. Когда применяется условие фильтра, в конце концов, скрываются все записи, не удовлетворяющие вашим требованиям. Они по-прежнему остаются в таблице, но ловко скрыты от глаз.
Программа Access может применять фильтры несколькими методами. В следующих разделах вы начнете знакомство с простейшего способа и будете постепенно осваивать более сложные варианты.
Обычный фильтр
Обычный фильтр (quick filter) позволяет выбрать те значения, которые вы хотите включить, и те — которые нужно скрыть, основываясь на текущих данных вашей таблицы. Для применения обычного фильтра выберите столбец, который вы хотите использовать, и затем щелкните мышью направленную вниз стрелку у правого края заголовка столбца. Вы увидите список всех конкретных значений в данном столбце. Первоначально флажок, расположенный у каждого значения, установлен. Сбросьте флажок у тех записей, которые вы хотите скрыть. На рис. 3.9 показан пример, в котором сортировка и фильтр применяются одновременно.
Примечание
Для удаления фильтров из столбца (и отображения всех записей на листе данных) щелкните мышью раскрывающуюся кнопку у правого края заголовка столбца и выберите команду Снять фильтр(Clear Filter).
Не все типы данных поддерживают фильтрацию. К типам данных, ее поддерживающим, относятся Числовой, Денежный, Счетчик, Текстовый, Гиперссылка, Дата/времяи Логический. Поля MEMOне поддерживают обычные фильтры (поскольку, как правило, их значения слишком велики и не помещаются в раскрывающемся списке), но другие типы фильтров они поддерживают.
Обычные фильтры можно применять в нескольких столбцах. Порядок применения фильтров не важен, поскольку все фильтры кумулятивные, т. е. вы увидите только те записи, которые удовлетворяют условиям всех установленных фильтров. Обычные фильтры можно использовать и в комбинации с другими вариантами фильтрации, описанными в следующих разделах. Для удаления фильтров выберите на ленте Главная→Сортировка и фильтр→Удалить фильтр(Ноmе → Sort & Filter → Remove Filter).
Совет
Обычные фильтры работают лучше всего, если у вас относительно немного различных значений. Отбор людей в зависимости от штата их проживания — прекрасный выбор, как и в зависимости от политической партии, которую они поддерживают, или их любимого цвета. Фильтр
будет работать не так эффективно, если вы решите отфильтровать список, основываясь на дате рождения, росте или весе, поскольку существует гигантский диапазон возможных значений этих характеристик. (Это не значит, что вы должны совсем отказаться от фильтрации — просто нужно использовать другой тип фильтра.)
Рис. 3.9. Этот список подходящих холостяков сначала сортируется по росту (в порядке убывания) и затем отфильтрован с сохранением только перспективных кандидатов, проживающих в штате Нью-Йорк. Установленный флажок свидетельствует о том, что записи с данным значением будут включены в лист данных. Остальные записи скрыты от глаз
Фильтр по выделенному
Фильтр по выделенному (filter by selection) позволяет применять фильтр, базирующийся на любом значении в вашей таблице. Этот тип фильтра очень удобен, если вы нашли точный тип записи, который хотите включить в выборку или исключить из нее. Применяя фильтр по выделенному, вы можете превратить текущее значение в фильтр без прочесывания списка фильтра.
Вот как это делается. Сначала найдите значение, которое хотите использовать для фильтрации листа данных. Щелкните его правой кнопкой мыши и выберите один из вариантов фильтрации в нижней части меню (рис. 3.10).
Все типы данных, поддерживающие фильтрацию, позволяют отбирать точные совпадения. Но многие из них предоставляют дополнительные варианты фильтрации, отображаемые в контекстном меню, которое вызывается щелчком правой кнопки мыши.
Рис. 3.10.Варианты фильтрации для разных типов данных слегка отличаются. В случае текстового поля (как поле City,показанного на рисунке) у вас есть возможность включить в выборку только те записи, которые соответствуют текущему значению (Равно "Chicago"),или те, которые не совпадают с ним (Не равно "Chicago").У вас также появляются дополнительные возможности, расширяющие отбор с помощью обычного фильтра, — а именно вы можете включить или исключить поля, просто содержащие текст "Chicago". Условию такого фильтра удовлетворяют такие значения, как "Chicago land" и "Little Chicago"
Далее перечислены варианты фильтрации для разных типов данных, которые вы можете увидеть.
§ Текстовые типы данных. Вы можете отбирать значения с точным совпадением или значения, содержащие фрагмент текста.
■ Числовые типы данных. Вы можете отфильтровать точно совпадающие значения или числа, которые меньше или больше текущего значения.
§ Типы данных Дата/время.Вы можете отфильтровать точно совпадающие значения или даты, более ранние или более поздние по сравнению с текущей датой.
Рис. 3.11.Рядом с элементами управления в нижней части листа данных есть индикатор С фильтром/Без фильтра,оповещающий о применении фильтра. Его можно также использовать для быстрого включения или отключения вашего фильтра — одинарный щелчок мышью по индикатору удаляет все фильтры, а повторный щелчок применяет еще раз самый последний набор фильтров
Наконец, для получения дополнительных навыков можно создать условие фильтрации, использующее только часть значения. Если у вас есть значение "Great at darts" (великолепно играет в дартс) в поле Description(описание) вашей таблицы, можно выделить текст "darts" и затем щелкнуть правой кнопкой мыши только этот текст. Теперь вы можете найти другие записи с нолями, содержащими слово "darts". Благодаря этой возможности фильтр по выделенному получил свое название.
Программа Access моментально включает или отключает фильтрацию, как показано на рис. 3.11.
Расширенный фильтр
Пока применяемые вами фильтры брали текущие значения в вашей таблице как отправную точку. Если вы чувствуете себя уверенно при работе с фильтрами, то можете попробовать расширенный вариант: фильтрацию по условию. Применяя расширенный фильтр, можно точно определить нужную вам фильтрацию.
Рис. 3.12.Вверху: для числового поля, такого как PurchasePrice(покупная цена), фильтрация по условию позволяет найти значения, превышающие определенный минимум. Внизу: после выбора нужного вам типа фильтра следует задать информацию для фильтрации. Если вы выбрали условие Больше,нужно задать минимальное число. Записи со значениями, равными или большими минимума, отображаются на листе данных
Допустим, что вы хотите найти в погребе все редкие марочные вина с ценой, не превышающей 85 долларов. В случае фильтра по выделенному вам придется начать с поиска вина
с ценой 85долларов, который можно использовать для создания условия. Но что произойдет, если в вашем перечне нет вина с ценой точно 85 долларов или вам кажется, что его невозможно найти? Быстрее задать условие фильтрации вручную.
Вот как это делается. Сначала щелкните направленную вниз стрелку у правого края заголовка столбца. Но вместо выбора одного из вариантов обычного фильтра найдите подменю с вариантами фильтрации. Это меню называется в соответствии с выбранными данными, так для текстовых полей включен вариант Текстовые фильтры(Text Filters), для числовых полей — Числовые фильтры(Number Filters) и т. д. На рис. 3.12 показан пример.
Далее приведен краткий обзор, описывающий дополнительные варианты, которые можно использовать в расширенном фильтре в зависимости от выбранного типа данных.
■ Текстовые типы данных. Те же варианты, что и у фильтра по выделенному, вдобавок вы можете найти значения, начинающиеся с конкретного текста или заканчивающиеся определенным текстом.
■ Числовые типы данных. Те же варианты, что и у фильтра по выделенному, а также вы можете выбрать значения, лежащие в диапазоне, т. е. все значения, большие заданного минимума, но меньшие заданного максимума.
■ Типы данных Дата/время.Те же варианты, что и у фильтра по выделенному, вдобавок вы можете найти даты, попадающие в диапазон, и выбрать из огромного перечня встроенных вариантов, таких как Вчера(Yesterday) На прошлой неделе(Last Week), В следующем месяце(Next Month), В этомгоду (Year to Date), В первом квартале(First Quarter) и т. д.