GROUPBY — различия между версиями
Материал из GB wiki
Alexey (обсуждение | вклад) |
Alexey (обсуждение | вклад) |
||
Строка 23: | Строка 23: | ||
* STRSUM - все значения в общей строке без разделителей. | * STRSUM - все значения в общей строке без разделителей. | ||
<blockquote>''Примечание. Для пар функций MIN-STRMIN и MAX-STRMAX следующие различия в сравнении числовых значений: | <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> |
}} | }} | ||
|Тип результата=нет. | |Тип результата=нет. |
Версия 11:58, 5 июня 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'])