colmax
Назначение
Функция colmax выдает подмножество записей, отвечающих условиям, и возвращает максимальное значение конкретной колонки.
Для сравнения см. функцию colmin, которая находит минимальное значение. Эта функция предназначена для работы с массивами.
Аргументы
Первый обязательный аргумент - имя колонки. Данный аргумент может включать теги колонок (#column) только в том случае, если именованный аргумент "type" отсутствует.
В целях совместимости второй необязательный аргумент автоматически конвертируется в именованный аргумент filter (если данный именованный аргумент отсутствует). Используются следующие именованные аргументы:
-
"type": строковый аргумент, имеющий одно из следующих значений: "numerical", "integer", "yesno", "string", "datetime", "stringid", "text", "numid".
-
Если данный аргумент пропущен, то единственный обязательный аргумент рассматривается как существующее имя колонки или строковая константа, эквивалентная имени колонки.
-
Если данный аргумент присутствует, то обязательный аргумент рассматривается как выражение строкового типа, которое применяется к именам колонках в родительском датасете.
Значение аргумента "type" - тип обработанных имен колонок. Колонки других типов будут пропущены, и для них функция вернет пустое значение.
-
-
"keys": строковая константа со списком колонок, означающих ключевые колонки, на которых функция группирует исходные данные (подобно выражению GROUP BY в SQL), т.е. "[Origin][Cylinders]". Вместо имен колонок также могут использоваться теги колонок.
-
filter: строковое выражение, которое обозначает фильтр и которое применяется к исходным данным до выполнения агрегирования (подобно выражению HAVING в SQL). Может отличаться в разных строках таблицы данных:
-
"maxbufsize": число агрегированных ключевых значений, по умолчанию до 1000000. Поскольку функция выполняет расчет используя оперативную память, функция может требовать большой объем памяти. Если это неприемлемо (если необходимые ресурсы отсутствуют) используйте комбинацию узлов Агрегирование и Объединение вместо данной функции.
-
"skipnan": булево выражение, соответствующее опции "Пропустить отсутствующие значения ключа" узла Агрегирование.
-
"delimiter": строковое выражение, используемое в функции colconcat и соответствующее опции "Строка-разделитель, заданная пользователем" узла Агрегирование.
-
"maxlen": числовое выражение, обозначающее максимальный размер конкатенированного текста (по умолчанию 20 млн. символов).
Аргумент filter не может содержать тегов (#колонки).
Первый аргумент обязательный. Он может быть любым типом данных, кроме текстовых, строковых, булевых, строковых идентификаторов и целочисленных идентификаторов; он должен быть названием колонки в таблице.
Второй аргумент необязательный. Он может быть строкой, содержащей выражение SRL, которое может расцениваться как истинное или ложное. Если не указано, какое это выражение, то второй аргумент всегда считается истинным.
Возвращаемое значение
Функция возвращает значение, обнаруженное в подмассиве записей. Тип данных возвращаемого значения совпадает с типом данных первого аргумента. Если присутствуют несколько нулевых значений, то они игнорируются и не влияют на результат. Если все значения нулевые, то результат нулевой. Это не соотносится с типом возвращаемого значения, который зависит от типа данных первого аргумента.