Aggr
Syntax:
Aggr({SetExpression}[DISTINCT] [NODISTINCT ] expr, StructuredParameter{, StructuredParameter})
Return data type: dual
Arguments:
Argumento | Descripción |
---|---|
|
Una expresión que consiste en una función de agregación. Por defecto, la función de agregación agregará sobre el conjunto de registros posibles definidos por la selección. |
|
La dimensión es un único campo y no puede ser una expresión. La dimensión se utiliza para definir el conjunto de valores para los que se calcula la función Si se incluyen criterios de ordenación, se ordena el conjunto de valores creados por la función Para más detalles sobre cómo usar criterios de ordenación, véase Añadir criterios de ordenación a la dimensión en el parámetro estructurado. |
|
Por defecto, la función de agregación agregará sobre el conjunto de registros posibles definidos por la selección. Se puede definir un conjunto alternativo de registros mediante una expresión de análisis de conjuntos. |
|
Si el argumento de la expresión va precedido por el cualificador distinct o si no se utiliza cualificador alguno, cada combinación distinta de valores de dimensión generará únicamente un solo valor de retorno. Esta es la forma habitual de hacer agregaciones: cada combinación distinta de valores de dimensión generará una línea del gráfico. |
NODISTINCT |
Si el argumento de la expresión va precedido por el cualificador nodistinct, cada combinación de valores de dimensión puede generar más de un valor de retorno, dependiendo de la estructura de datos subyacente. Si solo hay una dimensión, la función aggr devolverá un conjunto con el mismo número de elementos como filas en los datos fuente. |
Las funciones básicas de agregación, como
Limitations:
Cada dimensión en una función
Añadir criterios de ordenación a la dimensión en el parámetro estructurado
En su forma básica, el argumento
En el argumento
El argumento
(FieldName, (Sort-type, Ordering))
Los parámetros estructurados se pueden anidar:
(FieldName, (FieldName2, (Sort-type, Ordering)))
El tipo de clasificación puede ser:
Los tipos de ordenación asociados con cada tipo de clasificación son los siguientes:
Tipo de clasificación | Tipos de ordenación permitidos |
---|---|
|
|
|
|
|
|
|
|
Los tipos de ordenación
Para el tipo de clasificación
Para el tipo de clasificación
Examples and results:
Ejemplo | Resultado |
---|---|
|
La expresión Efectivamente, hemos creado una lista temporal de valores sin tener que crear una tabla o columna explícita que contenga dichos valores. Estos valores se utilizan como dato de entrada en la función |
|
Un conjunto de valores: 16, 16, 16, 25, 25, 25, 19 y 19. El cualificador nodistinct indica que el conjunto contiene un elemento por cada fila de datos fuente: cada uno es el máximo UnitPrice para cada Customer y Product. |
|
Utilizando criterios de ordenación en el argumento StructuredParameter de la expresión tenemos: max(aggr(sum(Customers)-above(Sum(Customers)), (MonthYear,(NUMERIC, ASCENDING)))) Sin utilizar criterios de ordenación, el resultado de la expresión max(aggr(sum(Customers)-above(Sum(Customers)), (MonthYear))) depende de cómo esté ordenada la dimensión Añadiendo valores de tipo de clasificación y tipo de ordenación a la dimensión, otorgamos criterios de ordenación al parámetro estructurado: (MonthYear, (NUMERIC, ASCENDING)), donde el tipo de clasificación Aquí estamos intentando hallar el mayor incremento en número de clientes, mes a mes. Esto podría utilizarse en una visualización de KPI, por ejemplo. La parte Como utilizamos criterios de ordenación con la dimensión: |
Datos utilizados en los ejemplos:
Cree una tabla con
ProductData:
LOAD * inline [
Customer|Product|UnitSales|UnitPrice
Astrida|AA|4|16
Astrida|AA|10|15
Astrida|BB|9|9
Betacab|BB|5|10
Betacab|CC|2|20
Betacab|DD|25|25
Canutility|AA|8|15
Canutility|CC||19
] (delimiter is '|');