GROUPBY — различия между версиями
Материал из GB wiki
Alexey (обсуждение | вклад) |
Alexey (обсуждение | вклад) |
||
Строка 21: | Строка 21: | ||
:* LIST – список значений (через ";"); | :* LIST – список значений (через ";"); | ||
:* STRSUM – все значения в общей строке без разделителей. | :* STRSUM – все значения в общей строке без разделителей. | ||
− | <blockquote>''Примечание. Для пар функций MIN | + | <blockquote>''Примечание. Для пар функций MIN–STRMIN и MAX–STRMAX следующие различия в сравнении числовых значений:'' |
* ''9 < 10, если сравнивать как числа (MIN, MAX);'' | * ''9 < 10, если сравнивать как числа (MIN, MAX);'' | ||
* ''"9" > "10", если сравнивать как строки, т.к. при посимвольном сравнении "9">"1" (STRMIN, STRMAX).''</blockquote> | * ''"9" > "10", если сравнивать как строки, т.к. при посимвольном сравнении "9">"1" (STRMIN, STRMAX).''</blockquote> |
Версия 08:13, 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'])