Функции агрегации в вычислимых полях

From Memento Database Wiki
Jump to navigation Jump to search

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

$sum('link_field_name.linked_field_name')
//This function returns the sum of values of field linked field name for all entries included into link field name.

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

$sum('link_field_name.field1','link_field_name.field2','@mul')
//Данная функция сначала перемножает поля field1  и field2 у связанных записей поля link_field_name. 
//После этого полученный набор чисел - суммируется, в качестве попарной операции указано - перемножение: '@mul'

Обратите внимание что параметры функций задаются в одинарных кавычках.

Function Arguments Returns
$sum fields, operation (необязательно, используется если задано несколько аргументов fields)

fields - путь к полю или атрибуту связанной записи в формате: ’link_field_name.linked_field_name’

where link field name is the name of a Link to Entry field, linked field name is the name of a field of a related entry.

This function returns the sum of values of field linked field name for all entries included into link field name.

В функцию можно передать пути к нескольким полям (атрибутам), в этом случае перед сложением будут выполняться попарные операции между полями (атрибутами). Тип попарной операции определяется последним аргументом функции operation и может быть:

  • ‘@mul’ - перемножение полей (атрибутов).
  • ‘@add’ - сложение полей (атрибутов).
  • ‘@sub’ - вычитание полей (атрибутов) из поля заданного первым.
  • ‘@div’ - деление полей (атрибутов) на поле заданное первым.

Аргумент operation является необязательным, если он не задан, то используется операция перемножения

$avg fields, operation This function returns the average of values of field linked field name for all entries included into link field name.
$min fields, operation This function returns the minimum of values of field linked field name for all entries included into link field name.
$max fields, operation This function returns the maximum of values of field linked field name for all entries included into link field name.