Agregaciones básicas
Métodos integrados
| Método | Equivalente en SQL | Descripción |
|---|---|---|
sum() | SUM() | Suma de valores |
mean() | AVG() | Promedio/media |
count() | COUNT() | Cuenta los valores no nulos |
min() | MIN() | Valor mínimo |
max() | MAX() | Valor máximo |
median() | MEDIAN() | Mediana |
std() | stddevPop() | Desviación estándar |
var() | varPop() | Varianza |
nunique() | COUNT(DISTINCT) | Cuenta los valores únicos |
Agregaciones de GroupBy
Agregación simple
Agregaciones múltiples
Agregaciones con nombre
Múltiples claves de agrupación
Agregaciones estadísticas
| Método | Equivalente en SQL | Descripción |
|---|---|---|
quantile(q) | quantile(q) | cuantil q-ésimo (0-1) |
skew() | skewPop() | Asimetría |
kurt() | kurtPop() | Curtosis |
corr() | corr() | Correlación |
cov() | covar() | Covarianza |
sem() | - | Error estándar de la media |
Agregaciones condicionales
| Función | ClickHouse | Descripción |
|---|---|---|
sum_if(cond) | sumIf() | Suma si se cumple la condición |
count_if(cond) | countIf() | Recuento si se cumple la condición |
avg_if(cond) | avgIf() | Promedio si se cumple la condición |
min_if(cond) | minIf() | Mínimo si se cumple la condición |
max_if(cond) | maxIf() | Máximo si se cumple la condición |
Agregaciones de recopilación
| FUNCTION | ClickHouse | Description |
|---|---|---|
group_array() | groupArray() | Recopila en un array |
group_uniq_array() | groupUniqArray() | Recopila valores únicos en un array |
group_concat(sep) | groupConcat() | Concatena cadenas |
top_k(n) | topK(n) | Top K de valores más frecuentes |
any() | any() | Un valor cualquiera |
any_last() | anyLast() | Último valor |
first_value() | first_value() | Primer valor en orden |
last_value() | last_value() | Último valor en orden |
Funciones de ventana
Funciones de clasificación
| Función | SQL | Descripción |
|---|---|---|
row_number() | ROW_NUMBER() | Número de fila secuencial |
rank() | RANK() | Rango con huecos |
dense_rank() | DENSE_RANK() | Rango sin huecos |
ntile(n) | NTILE(n) | Divide en n grupos |
percent_rank() | PERCENT_RANK() | Rango porcentual (0-1) |
cume_dist() | CUME_DIST() | Distribución acumulada |
Funciones de valor
| Función | SQL | Descripción |
|---|---|---|
lag(n) | LAG(col, n) | Valor de la fila anterior |
lead(n) | LEAD(col, n) | Valor de la fila siguiente |
first_value() | FIRST_VALUE() | Primer valor de la ventana |
last_value() | LAST_VALUE() | Último valor de la ventana |
nth_value(n) | NTH_VALUE(col, n) | Enésimo valor de la ventana |
Funciones acumulativas
| Método | Descripción |
|---|---|
cumsum() | Suma acumulada |
cummax() | Máximo acumulado |
cummin() | Mínimo acumulado |
cumprod() | Producto acumulado |
diff(n) | Diferencia respecto a n filas atrás |
pct_change(n) | Cambio porcentual respecto a n filas atrás |
Ventanas móviles
Espacio de nombres F
F proporciona acceso a las funciones de ClickHouse.
Importación
Uso de funciones F
F con funciones de ventana
Patrones de agregación comunes
Top N por grupo
Suma acumulada
Media móvil
Comparación interanual
Clasificación percentil
Resumen de métodos de agregación
| Categoría | Métodos |
|---|---|
| Básico | sum, mean, count, min, max, median |
| Estadístico | std, var, quantile, skew, kurt, corr, cov |
| Condicional | sum_if, count_if, avg_if, min_if, max_if |
| Colección | group_array, group_uniq_array, group_concat, top_k |
| clasificación | row_number, rank, dense_rank, ntile, percent_rank |
| Valor | lag, lead, first_value, last_value, nth_value |
| Acumulativo | cumsum, cummax, cummin, cumprod, diff, pct_change |
| móvil | rolling().mean/sum/std/..., expanding().mean/sum/... |