Difference between revisions of "TempDB.Gross1"
(Created page with "{{infobox function |name=Gross1, Compute1 |object=Временная таблица базы данных |caption=Простой подсчет в таблице |type=1...") |
m (1 revision imported) |
||
(2 intermediate revisions by 2 users not shown) | |||
Line 25: | Line 25: | ||
** '''SUM''' (по умолчанию) -- будет найдена сумма указанного столбца по строкам, входящим в фильтр. Значения столбца должны иметь числовой тип данных. | ** '''SUM''' (по умолчанию) -- будет найдена сумма указанного столбца по строкам, входящим в фильтр. Значения столбца должны иметь числовой тип данных. | ||
** '''AVG''' -- будет найдено среднее значение указанного столбца из строк, входящим в фильтр. Значения столбца должны иметь числовой тип данных. | ** '''AVG''' -- будет найдено среднее значение указанного столбца из строк, входящим в фильтр. Значения столбца должны иметь числовой тип данных. | ||
− | ** '''MAX''' -- из всех значений столбца, входящих в фильтр, будет возвращено максимальное. Значения столбца могут иметь произвольный тип, в т.ч. тип базы данных, однако, максимальным будет не значение, наименование которого (или дата которого) имеют максимальное значение, а значение с максимальным внутренним кодом. | + | ** '''MAX''' -- из всех значений столбца, входящих в фильтр, будет возвращено максимальное. Значения столбца могут иметь произвольный тип, в т.ч. тип базы данных, однако, в случае столбцов с типом объекта базы данных, максимальным будет не значение, наименование которого (или дата которого) имеют максимальное значение, а значение с максимальным внутренним кодом. |
− | ** '''MIN''' -- из всех значений столбца,входящих в фильтр, будет возвращено минимальное. Значения столбца могут иметь произвольный тип, в т.ч. тип базы данных, однако, минимальным будет не значение, наименование которого (или дата которого) имеют минимальное значение, а значение с минимальным внутренним кодом. | + | ** '''MIN''' -- из всех значений столбца,входящих в фильтр, будет возвращено минимальное. Значения столбца могут иметь произвольный тип, в т.ч. тип базы данных, однако, в случае столбцов с типом объекта базы данных, минимальным будет не значение, наименование которого (или дата которого) имеют минимальное значение, а значение с минимальным внутренним кодом. |
** '''COUNT''' -- будет возвращено количество строк, входящих в фильтр (равнозначно функции [[TempDB.Size|Size]]). | ** '''COUNT''' -- будет возвращено количество строк, входящих в фильтр (равнозначно функции [[TempDB.Size|Size]]). | ||
+ | * <code>''<Стандартные фильтры>''</code> - {{Optional}} Стандартные фильтры отбора записей таблицы описаны в статье [[Стандартные фильтры]]. Важное отличие от фильтров функций объектов базы данных заключается в том, что стандартные фильтры всегда работают в сложном (расширенном) режиме, при этом отсутствует требование, что первая строка фильтра должна начинаться на знак '''~'''. Выражения фильтров содержат весь возможный набор функций и операторов языка запросов (см. [[Временная таблица базы данных]], [[Объект запрос базы данных]]), при указании наименование также применимы префиксы (типа ''':'''), как это описано в [[Временная таблица базы данных#Формулы при вычислении полей записей временной таблицы базы данных|статье по временной таблице базы данных]]. | ||
+ | |||
+ | ==== Возвращаемое значение ==== | ||
+ | Возвращает вещественное число -- результат операции. | ||
== Примеры == | == Примеры == |
Latest revision as of 09:05, 28 June 2021
Gross1, Compute1 (Простой подсчет в таблице) | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Функция вычисляет значение агрегации указанного столбца таблицы среди записей, входящих в указанный фильтр.
Синтаксис
TempDB.Gross1(<Наименование столбца (STRING)>,<Тип операции агрегации (STRING)>="SUM",<Стандартные фильтры>...):<Результат агрегации (NUMBER)>
Аргументы
<Наименование столбца (STRING)>
- Аргумент задает наименование столбца, для которого необходимо выполнить операцию подсчета.<Тип операции агрегации (STRING)>
- (необязательный аргумент) Аргумент задает тип операции, который необходимо выполнить над столбцом. Доступны следующие значения операций:- SUM (по умолчанию) -- будет найдена сумма указанного столбца по строкам, входящим в фильтр. Значения столбца должны иметь числовой тип данных.
- AVG -- будет найдено среднее значение указанного столбца из строк, входящим в фильтр. Значения столбца должны иметь числовой тип данных.
- MAX -- из всех значений столбца, входящих в фильтр, будет возвращено максимальное. Значения столбца могут иметь произвольный тип, в т.ч. тип базы данных, однако, в случае столбцов с типом объекта базы данных, максимальным будет не значение, наименование которого (или дата которого) имеют максимальное значение, а значение с максимальным внутренним кодом.
- MIN -- из всех значений столбца,входящих в фильтр, будет возвращено минимальное. Значения столбца могут иметь произвольный тип, в т.ч. тип базы данных, однако, в случае столбцов с типом объекта базы данных, минимальным будет не значение, наименование которого (или дата которого) имеют минимальное значение, а значение с минимальным внутренним кодом.
- COUNT -- будет возвращено количество строк, входящих в фильтр (равнозначно функции Size).
<Стандартные фильтры>
- (необязательный аргумент) Стандартные фильтры отбора записей таблицы описаны в статье Стандартные фильтры. Важное отличие от фильтров функций объектов базы данных заключается в том, что стандартные фильтры всегда работают в сложном (расширенном) режиме, при этом отсутствует требование, что первая строка фильтра должна начинаться на знак ~. Выражения фильтров содержат весь возможный набор функций и операторов языка запросов (см. Временная таблица базы данных, Объект запрос базы данных), при указании наименование также применимы префиксы (типа :), как это описано в статье по временной таблице базы данных.
Возвращаемое значение
Возвращает вещественное число -- результат операции.
Примеры
//Фрагмент загружает во временную таблицу движения накопителя с определенными фильтрами и добавляет их сумму к переменной СмБухИтого аТемп:=TempDB.Create("Сумма:NUMBER.15.2"); аТемп.LoadFrom("Stor.БухгалтерскиеСчета","?(@Expense=1,-Сумма,Сумма)->Сумма", "@Date>=НачДата", "@Date<КонДата", "IsType(@LINK,Doc.РегистрацияВыпускаПродукции)", "@LINK IN спРегистрации", "(Счет=Сч20)And(Субконто1=сбПроизводство)And(Субконто2=сбЗатраты)And(isEmpty(Субконто3))"); СмБухИтого:=Round(СмБухИтого+аТемп.Gross1("Сумма"),2);