С помощью определенного вывода вашего запроса, вы теперь можете организовывать записи, которые появляются в результате исполнения запроса с помощью их упорядочивания и группировки в полях вывода. Кроме, если вы пожелаете, то вы сможете также фильтровать группы, которые появятся в результатах исполнения запросов.

Упорядочивание результатов запроса

Упорядочивание определяет порядок, в каком записи или строки будут отсортированы, когда они появтся в выводе вашего запроса. Например, вы сможете сортировать записи по State, а затем по City, или сортировать их по возрастанию на основе остатка баланса счета.

Для установки порядка сортировки вашего запроса используйте закладку Order By. Порядок сортировки определяет порядок, в котором записи или строки появятся в выоде вашего запроса.

Для начала выберите поля, которые вы желаете использовать, с помощью бокса Selected Fields (Выбранные поля) в боксе Ordering Criteria (Критерий упорядочивания). Затем расположите поля в том порядке, в котором они должны появиться в результатах исполнения запроса.

Для установки порядка сортировки

  1. В боксе Selected fields (Выбранные поля), выберите имя поля.

  2. Затем щелкните по Add (Добавить).

Для удаления порядка сортировки

  1. Выберите одно и более полей, которые вы желаете удалить.

  2. Затем щелкните по Remove (Удалить).

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

Например, если первым полем в боксе Ordering criteria (Критерий упорядочивания) является поле Customer.region, а вторым полем является Customer.city, the то результаты будут упорядочены по Customer.region. Если в таблице потребителей имеется больше одной записи для для одного и того же значения поля region, то эти записи будут дополнительно упорядочены по полю Customer.city.

Для установки значимости поля порядка сортировки, используйте кнопку слева от поля для перетаскивания поля в желаемую позицию в боксе Ordering criteria (Критерий упорядочивания).

Вы можете сортировать по возрастанию или убыванию с помощью кнопки Order (Порядок) в области опций. Каждое поле появляется в кнопками перемещения в боксе Output fields (Поля вывода) на закладке Filter (Фильтр), с помощью которых вы сможете установить, как будут сортироваться данные поля - по убыванию или по возрастанию.

Группировка результатов запроса

Группировка консолидирует или собирает похожие записи в одну запись, для того, чтобы вы смогли выполнить вычисления, основанные на группе записей. Например, вы можете пожелать найти сумму всех счетов для указанного региона. Вместо того, чтобы искать все записи индивидуально, вы можете сгруппировать все записи, касающиеся одного региона, в одну и получить сумму по всем счетам для этого региона. Для управления группировкой записей используйте закладку Group By (Группировать по) в Query Designer (Конструкторе запроса).

Группировка наиболее полезна, когда используется в соединении с такими агрегатными функциями, как SUM, COUNT, AVG и тому подобными.

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

Сначала используйте закладку Fields (Поля) для добавления в вывод вашего запроса выражения SUM(Orders.order_net), затем используйте закладку Group By (Группировать по) для группировки результатов по номеру ID потребителя. Результат покажет общую сумму заказов для каждого потребителя:

Для установки параметров группировки

  1. На закладке Fields (Поля) впечатайте выражение в боксе Functions and expressions (Функции и выражения).

    - или-

    щелкните по кнопен вывода диалогового окна Expression Builder (Компоновщика выражения) для ввода выражения в бокс Functions and expressions (Функции и выражения).

  2. Щелкните по кнопке Add (Добавить), чтобы поместить выражение в бокс Selected fields (Выбранные поля).

  3. На закладке Group By (Группировать по), введите выражение для группировки результатов.

Вы можете, кроме того, установить фильтр на сгруппированные результаты.

Выбор групп, которые вам нужны

Для установки фильтра на сгруппированные или консолидированные записи вместо установки этих опций на индивидуальные запси, выберите Having (Имеющие...) на закладке Group By (Группировать по). Вы можете использовать имя поля, агрегатную функцию с именем поля или иное выражение в боксе Field Name (Имя поля).

Собрав предыдущий пример, вы можете использовать запрос, который покажет общую сумму продаж для номер потребителя, затем используйте кнопку Having (Имеющие...) для ограничения вывода на уровне пользователей, которые имеют по счетам более чем $50,000:

Для установки параметра Having на группу

  1. На закладке Group By (Группировать по) щелкните по Having (Имеющие...).

  2. В диалоговом окне Having (Имеющие...) выберите функцию и имя поля в поле Field Name (Имя поля).

  3. Щелкните по OK (Сделано).

Смотрите также