Группировки результатов запроса
При просмотре предыдущих результатов выполнения запросов данные получались в том виде, как они вводились в документы. Но если требуется получить ответ на вопрос: сколько какого-то товара закупалось (вообще), то либо придется складывать все вручную, либо использовать группировку.
Данные в запросе могут быть сгруппированы с помощью агрегатных функций, указанных в качестве полей выборки. Очень важно помнить, что в большинстве случаев все поля выборки запроса должны делиться на агрегатные функции и поля, по которым ведется группировка (исключение в определенных случаях составляют поля «Представление», встроенные функции и т. п.).
Рассмотрим текст запроса:
Выбрать Номенклатура Как Товар, Сумма (Количество), Сумма (Сумма) Из Документ. Приходная. Товары Сгруппировать По Номенклатура |
|
При указании группировки псевдоним поля указывать нельзя. В качестве агрегатных функций можно использовать: • Сумма (Выражение) • Среднее (Выражение) • Минимум (Выражение) • Максимум (Выражение) • Количество ([Различные] Выражение) |
Практикум № 14 _____________________________________
Напишите текст запроса, который для каждой номенклатурной позиции выводил бы количество поставок (при условии, что номенклатура в рамках документа не повторяется), среднее, минимальное, максимальное количество в поставке.
Вместе с группировкой можно пользоваться упорядочиванием, В соответствии со структурой текста запроса раздел группировки определяется раньше, чем раздел определения способов упорядочивания результатов запроса.
Выбрать Номенклатура Как Товар, Ссылка. Контрагент, Сумма (Количество), Сумма (Сумма) как Сумма Из Документ. Приходная. Товары Сгруппировать По Номенклатура, Ссылка. Контрагент Упорядочить По Сумма Убыв |
||||
Условия на значения агрегатных функций Рассмотрим следующий текст запроса: |
||||
Выбрать Номенклатура Как Товар, Сумма (Количество), |
||||
Выбрать Номенклатура Как Товар, Сумма (Количество), Сумма (Сумма) как Сумма Из Документ. Приходная. Товары Сгруппировать По Номенклатура Упорядочить По Сумма Убыв |
||||
Сумма (Сумма) Из Документ. Приходная. Товары Сгруппировать По Номенклатура Имеющие Сумма (Сумма)> 1000 |
||||
Практикум № 15 _________________________________________
Напишите текст запроса, который выдавал бы список покупателей, купивших более чем один товар, и при этом сумма покупки была более 200, отсортируйте список по убыванию количества покупок.