Выполнить агрегатную функцию
Синтаксис
L_SWORD GetAggregate ( L_LONG lColumn, /* номер столбца */ L_SWORD AggFunc, /* тип функции */ L_LONG lType, /* тип данных */ void *Data, /* буфер для результата */ L_LONG *plDataLen, /* длина буфера */ L_LONG *plFlags); /* флаги */
Входные параметры
Параметр | Описание | |
---|---|---|
lColumn
| Порядковый номер столбца в выборке (нумерация начинается с 1), по которому вычисляется агрегатная функция | |
AggFunc
| Тип агрегатной функции (таблица 2) | |
lType
| Тип данных, в котором требуется получить результат | |
*Data
| Буфер для результата работы функции | |
*plDataLen
| Длина буфера | |
*plFlags
| Возвращаемые атрибуты вычисленного функцией значения |
Таблица 2. Типы поддерживаемых агрегатных функций
Агрегатная функция | Символьное обозначение, SQL | Описание |
---|---|---|
linDataSet::gaMin | min(column) | Функция возвращает наименьшее значение из заданного множества |
linDataSet::gaMax | max(column) | Функция возвращает наибольшее значение из заданного множества |
linDataSet::gaCount | count(column) | Функция возвращает число ячеек столбца без учёта NULL-значений |
linDataSet::gaAvg | avg(column) | Функция возвращает среднее арифметическое значение набора числовых значений |
linDataSet::gaSum | sum(column) | Функция возвращает сумму множества числовых значений |
Выходные параметры
Параметр | Описание | |
---|---|---|
Data
| Результат работы функции | |
plDataLen
| Длина вычисленного функцией значения | |
plFlags
| Флаги атрибутов вычисленного функцией значения |
Описание
Метод вычисляет агрегатную функцию для требуемого столбца. Если перед вызовом функции был выполнен поиск, агрегатная функция вычисляется для результата поиска.
Примечание
Функции linDataSet::gaAvg и linDataSet::gaSum применимы только к столбцам числового типа.