GROUPBY — различия между версиями
Материал из GB wiki
Alexey (обсуждение | вклад) |
Alexey (обсуждение | вклад) |
||
Строка 12: | Строка 12: | ||
}}<br/>{{Аргумент | }}<br/>{{Аргумент | ||
|Название=Поля для суммирования | |Название=Поля для суммирования | ||
− | |Пояснение=Строка, список полей для суммирования через ";". После каждого поля может быть указана функция через знак "=". Также можно использовать массив, где ключи | + | |Пояснение=Строка, список полей для суммирования через ";". После каждого поля может быть указана функция через знак "=". Также можно использовать массив, где ключи – имена полей, значения – функции. |
:<p>Список функций:</p> | :<p>Список функций:</p> | ||
− | :* SUM | + | :* SUM – сумма значений; |
− | :* MIN | + | :* MIN – минимальное значение; |
− | :* STRMIN | + | :* STRMIN – минимальное значение (сравнение числовых значений как строк); |
− | :* MAX | + | :* MAX – максимальное значение; |
− | :* STRMAX | + | :* STRMAX – максимальное значение (сравнение числовых значений как строк); |
− | :* LIST | + | :* LIST – список значений (через ";"); |
− | :* STRSUM | + | :* STRSUM – все значения в общей строке без разделителей. |
<blockquote>''Примечание. Для пар функций MIN-STRMIN и MAX-STRMAX следующие различия в сравнении числовых значений:'' | <blockquote>''Примечание. Для пар функций MIN-STRMIN и MAX-STRMAX следующие различия в сравнении числовых значений:'' | ||
* ''9 < 10, если сравнивать как числа (MIN, MAX);'' | * ''9 < 10, если сравнивать как числа (MIN, MAX);'' |
Версия 08:12, 10 августа 2015
Позволяет группировать датасет по ключевым полям, суммируя при этом значения полей, которые не участвовали в группировке.
Синтаксис
GROUPBY (Имя датасета,Поля для группировки,Поля для суммирования)
Аргументы
- Имя датасета
- строка, имя датасета.
- Поля для группировки
- Строка, список ключевых полей для группировки через ";". Также можно использовать массив строк без ключей.
- Поля для суммирования
- Строка, список полей для суммирования через ";". После каждого поля может быть указана функция через знак "=". Также можно использовать массив, где ключи – имена полей, значения – функции.
Список функций:
- SUM – сумма значений;
- MIN – минимальное значение;
- STRMIN – минимальное значение (сравнение числовых значений как строк);
- MAX – максимальное значение;
- STRMAX – максимальное значение (сравнение числовых значений как строк);
- LIST – список значений (через ";");
- STRSUM – все значения в общей строке без разделителей.
Примечание. Для пар функций MIN-STRMIN и MAX-STRMAX следующие различия в сравнении числовых значений:
- 9 < 10, если сравнивать как числа (MIN, MAX);
- "9" > "10", если сравнивать как строки, т.к. при посимвольном сравнении "9">"1" (STRMIN, STRMAX).
Тип результата
- Нет
Примеры
GROUPBY('foDS','Articul','Quantity')
GROUPBY('pds','Node;Name','Id=SUM;Name=LIST')
GROUPBY('pds',['Node','Name'],['Id':'SUM','Name':'LIST'])