logo
Microsoft Excel и Microsoft Access

Сортировка записей в запросе в Microsoft Access

Существует два вида сортировки, которые можно выполнить: простая сортировка и сложная сортировка.

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

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

Особенности сортировки записей.

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

В одном или нескольких полях результатов запроса или расширенного фильтра может быть отсортировано до 255 знаков.

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

Если бланк запроса или фильтра содержит знак "звездочка" из списка полей, то определить в нем порядок сортировки можно, только добавив в него поля, которые необходимо отсортировать.

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

Числа, хранящиеся в текстовых полях, сортируются как строки знаков, а не как числовые значения. Поэтому для выполнения их сортировки в числовом порядке все текстовые строки должны иметь одинаковую длину. Например, результатом сортировки по возрастанию текстовых строк "1", "2", "11" и "22" будет "1", "11", "2", "22". В начало строк с меньшим количеством знаков следует добавить незначащие нули, например: "01", "02", "11", "22". Еще одним решением данной проблемы для полей, не содержащих значения Null, будет использование функции Val для сортировки числовых значений строк. Например, если столбец "Возраст" является текстовым полем, содержащим числовые значения, то для расположения записей этого столбца в должном порядке можно указать в ячейке Поле функцию Val ([Возраст]), а в ячейке Сортировка указать нужный порядок сортировки. Если числовые значения или значения дат хранятся только в текстовом поле, рекомендуется изменить тип данных этого поля таблицы на числовой, денежный или даты/времени. После выполнения сортировки по этому полю числа или даты будут располагаться в надлежащем порядке без ввода дополнительных нулей.

При сортировке поля по возрастанию записи, в которых это поле пусто (содержит значение Null), ставятся в начало списка. Если поле содержит как записи со значениями Null, так и записи с пустыми строками, при сортировке первыми будут отображены поля со значениями Null, а сразу за ними поля с пустыми строками.