GROUPBY — различия между версиями
Материал из GB wiki
Alexey (обсуждение | вклад) |
Alexey (обсуждение | вклад) |
||
Строка 13: | Строка 13: | ||
|Название=Поля для суммирования | |Название=Поля для суммирования | ||
|Пояснение=Строка, список полей для суммирования через ";". После каждого поля может быть указана функция через знак "=". Также можно использовать массив, где ключи - имена полей, значения - функции.</p> | |Пояснение=Строка, список полей для суммирования через ";". После каждого поля может быть указана функция через знак "=". Также можно использовать массив, где ключи - имена полей, значения - функции.</p> | ||
− | <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);'' | ||
* ''"9" > "10", если сравнивать как строки, т.к. при посимвольном сравнении "9">"1" (STRMIN, STRMAX).''</blockquote> | * ''"9" > "10", если сравнивать как строки, т.к. при посимвольном сравнении "9">"1" (STRMIN, STRMAX).''</blockquote> |
Версия 12:43, 5 июня 2015
Позволяет группировать датасет по ключевым полям, суммируя при этом значения полей, которые не участвовали в группировке.
Синтаксис
GROUPBY (Имя датасета,Поля для группировки,Поля для суммирования)
Аргументы
- Имя датасета
- строка, имя датасета.
- Поля для группировки
- Строка, список ключевых полей для группировки через ";". Также можно использовать массив строк без ключей.
- Поля для суммирования
- Строка, список полей для суммирования через ";". После каждого поля может быть указана функция через знак "=". Также можно использовать массив, где ключи - имена полей, значения - функции.</p>
Список функций:
- 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'])