Si tu administrador te otorgó los permisos para crear cálculos de tablas, puedes usar las siguientes funciones para realizar rápidamente funciones comunes sin necesidad de crear expresiones de Looker:
- Cálculos rápidos para realizar rápidamente cálculos comunes en los campos numéricos que se encuentran en la tabla de datos de un Explorar
Si tu administrador te otorgó los permisos para crear campos personalizados, puedes usar las siguientes funciones para realizar rápidamente funciones comunes sin necesidad de crear expresiones de Looker:
Grupos personalizados para agrupar rápidamente valores bajo etiquetas personalizadas sin necesidad de desarrollar lógica de
CASE WHEN
en los parámetros desql
ni en los campos detype: case
Discretizaciones personalizadas para agrupar dimensiones de tipo numérico en niveles personalizados sin necesidad de desarrollar campos de
type: tier
LookML
Las expresiones de Looker (a veces conocidas como Lexp) se usan para realizar cálculos para lo siguiente:
- Cálculos basados en tablas (que incluyen expresiones usadas en pruebas de datos)
- Campos personalizados
- Filtros personalizados
Una parte importante de estas expresiones son las funciones y operadores que puedes usar en ellas. Las funciones y operadores se pueden dividir en algunas categorías básicas:
- Matemáticas: Funciones relacionadas con los números
- Cadena: Funciones relacionadas con letras y palabras
- Fechas: Funciones relacionadas con la fecha y la hora
- Transformación lógica: Incluye funciones booleanas (verdadero o falso) y operadores de comparación
- Transformación posicional: Recupera valores de diferentes filas o tablas dinámicas
Algunas funciones solo están disponibles para cálculos basados en tablas
Las expresiones de Looker para filtros personalizados y campos personalizados no admiten funciones de Looker que conviertan tipos de datos, agreguen datos de varias filas o hagan referencia a otras filas o columnas dinámicas. Estas funciones solo se admiten para cálculos basados en tablas (incluidos los cálculos basados en tablas que se usan en el parámetro expression
de una prueba de datos).
En esta página, se explica qué funciones y operadores están disponibles, según el lugar en el que uses tu expresión de Looker.
Funciones y operadores matemáticos
Las funciones y los operadores matemáticos funcionan de una de las siguientes dos maneras:
- Algunas funciones matemáticas realizan cálculos basados en una sola fila. Por ejemplo, las funciones de redondeo, raíz cuadrada, multiplicación y similares se pueden usar para los valores de una sola fila, y muestran un valor distinto para cada fila. Todos los operadores matemáticos, como
+
, se aplican una fila a la vez. - Otras funciones matemáticas, como los promedios y los totales acumulados, operan en muchas filas. Estas funciones toman muchas filas y las reducen a un solo número, y, luego, muestran ese mismo número en cada fila.
Funciones para cualquier expresión de Looker
Función | Sintaxis | Objetivo |
---|---|---|
abs |
abs(value) |
Devuelve el valor absoluto de value . Para ver un ejemplo, consulta la publicación de Comunidad Standard Deviation and Simple Time Series Outlier Detection Using Table Calculations (Detección de valores atípicos de series temporales simples y desviación estándar con cálculos basados en tablas). |
ceiling |
ceiling(value) |
Devuelve el número entero más pequeño mayor o igual que value . |
exp |
exp(value) |
Devuelve e elevado a la potencia de value . |
floor |
floor(value) |
Devuelve el número entero más grande que sea menor o igual que value . |
ln |
ln(value) |
Devuelve el logaritmo natural de value . |
log |
log(value) |
Devuelve el logaritmo en base 10 de value . |
mod |
mod(value, divisor) |
Devuelve el resto de la división de value por divisor . |
power |
power(base, exponent) |
Devuelve base elevado a la potencia de exponent . Para ver un ejemplo, consulta la publicación de Comunidad Standard Deviation and Simple Time Series Outlier Detection Using Table Calculations (Detección de valores atípicos de series temporales simples y desviación estándar con cálculos basados en tablas). |
rand |
rand() |
Devuelve un número aleatorio entre 0 y 1. |
round |
round(value, num_decimals) |
Devuelve value redondeado a num_decimals posiciones decimales. Para ver ejemplos que usan round , consulta las publicaciones de la comunidad Cómo usar pivot_index en cálculos basados en tablas y Detección de valores atípicos de series temporales simples y desviación estándar con cálculos basados en tablas. |
sqrt |
sqrt(value) |
Devuelve la raíz cuadrada de value . Para ver un ejemplo, consulta la publicación de Comunidad Standard Deviation and Simple Time Series Outlier Detection Using Table Calculations (Detección de valores atípicos de series temporales simples y desviación estándar con cálculos basados en tablas). |
Funciones solo para cálculos basados en tablas
Muchas de estas funciones operan en varias filas y solo tendrán en cuenta las filas que devuelva tu consulta.
Función | Sintaxis | Objetivo |
---|---|---|
acos |
acos(value) |
Devuelve el arcocoseno de value . |
asin |
asin(value) |
Devuelve el seno inverso de value . |
atan |
atan(value) |
Devuelve la tangente inversa de value . |
beta_dist |
beta_dist(value, alpha, beta, cumulative) |
Devuelve la posición de value en la distribución beta con los parámetros alpha y beta . Si es cumulative = yes , devuelve la probabilidad acumulada. |
beta_inv |
beta_inv(probability, alpha, beta) |
Devuelve la posición de probability en la distribución beta acumulada inversa con los parámetros alpha y beta . |
binom_dist |
binom_dist(num_successes, num_tests, probability, cumulative) |
Devuelve la probabilidad de obtener num_successes éxitos en num_tests pruebas con la probabilidad de éxito probability determinada. Si es cumulative = yes , devuelve la probabilidad acumulada. |
binom_inv |
binom_inv(num_tests, test_probability, target_probability) |
Devuelve el número más pequeño k tal que binom(k, num_tests, test_probability, yes) >= target_probability . |
chisq_dist |
chisq_dist(value, dof, cumulative) |
Devuelve la posición de value en la distribución gamma con dof grados de libertad. Si es cumulative = yes , devuelve la probabilidad acumulada. |
chisq_inv |
chisq_inv(probability, dof) |
Devuelve la posición de probability en la distribución gamma acumulada inversa con dof grados de libertad. |
chisq_test |
chisq_test(actual, expected) |
Devuelve la probabilidad de la prueba de chi cuadrado para la independencia entre los datos de actual y expected . actual puede ser una columna o una columna de listas, y expected debe ser del mismo tipo. |
combin |
combin(set_size, selection_size) |
Devuelve la cantidad de formas de elegir selection_size elementos de un conjunto de tamaño set_size . |
confidence_norm |
confidence_norm(alpha, stdev, n) |
Devuelve la mitad del ancho del intervalo de confianza normal con un nivel de significancia alpha , una desviación estándar stdev y un tamaño de muestra n . |
confidence_t |
confidence_t(alpha, stdev, n) |
Devuelve la mitad del ancho del intervalo de confianza de la distribución t de Student con un nivel de significancia alpha , una desviación estándar stdev y un tamaño de muestra n . |
correl |
correl(column_1, column_2) |
Devuelve el coeficiente de correlación de column_1 y column_2 . |
cos |
cos(value) |
Devuelve el coseno de value . |
count |
count(expression) |
Devuelve el recuento de valores no null en la columna definida por expression , a menos que expression defina una columna de listas, en cuyo caso devuelve el recuento en cada lista. |
count_distinct |
count_distinct(expression) |
Devuelve el recuento de valores distintos que no son null en la columna definida por expression , a menos que expression defina una columna de listas, en cuyo caso devuelve el recuento en cada lista. |
covar_pop |
covar_pop(column_1, column_2) |
Devuelve la covarianza de la población de column_1 y column_2 . |
covar_samp |
covar_samp(column_1, column_2) |
Devuelve la covarianza de la muestra de column_1 y column_2 . |
degrees |
degrees(value) |
Convierte value de radianes a grados. |
expon_dist |
expon_dist(value, lambda, cumulative) |
Devuelve la posición de value en la distribución exponencial con el parámetro lambda . Si es cumulative = yes , devuelve la probabilidad acumulada. |
f_dist |
f_dist(value, dof_1, dof_2, cumulative) |
Devuelve la posición de value en la distribución F con los parámetros dof_1 y dof_2 . Si es cumulative = yes , devuelve la probabilidad acumulada. |
f_inv |
f_inv(probability, dof_1, dof_2) |
Devuelve la posición de probability en la distribución F acumulada inversa con los parámetros dof_1 y dof_2 . |
fact |
fact(value) |
Devuelve el factorial de value . |
gamma_dist |
gamma_dist(value, alpha, beta, cumulative) |
Devuelve la posición de value en la distribución gamma con parámetros alpha y beta . Si es cumulative = yes , devuelve la probabilidad acumulada. |
gamma_inv |
gamma_inv(probability, alpha, beta) |
Devuelve la posición de probability en la distribución gamma acumulativa inversa con los parámetros alpha y beta . |
geomean |
geomean(expression) |
Devuelve la media geométrica de la columna creada por expression , a menos que expression defina una columna de listas, en cuyo caso devuelve la media geométrica de cada lista. |
hypgeom_dist |
hypgeom_dist(sample_successes, sample_size, population_successes, population_size, cumulative) |
Devuelve la probabilidad de obtener sample_successes a partir de los valores proporcionados de sample_size , la cantidad de population_successes y population_size . Si es cumulative = yes , devuelve la probabilidad acumulada. |
intercept |
intercept(y_column, x_column) |
Devuelve la intersección de la línea de regresión lineal a través de los puntos determinados por y_column y x_column . Para ver un ejemplo, consulta la publicación de Comunidad Cómo realizar previsiones en Looker con cálculos de tablas. |
kurtosis |
kurtosis(expression) |
Devuelve el exceso de curtosis muestral de la columna creada por expression , a menos que expression defina una columna de listas, en cuyo caso devuelve el exceso de curtosis muestral de cada lista. |
large |
large(expression, k) |
Devuelve el k º valor más grande de la columna creada por expression , a menos que expression defina una columna de listas, en cuyo caso devuelve el k º valor más grande de cada lista. |
match |
match(value, expression) |
Devuelve el número de fila de la primera aparición de value en la columna creada por expression , a menos que expression defina una columna de listas, en cuyo caso devuelve la posición de value en cada lista. |
max |
max(expression) |
Devuelve el valor máximo de la columna creada por expression , a menos que expression defina una columna de listas, en cuyo caso devuelve el valor máximo de cada lista. Para ver ejemplos que usan max , consulta las publicaciones de la comunidad Cómo usar listas en cálculos basados en tablas y Cómo agrupar por una dimensión en cálculos basados en tablas. |
mean |
mean(expression) |
Devuelve la media de la columna creada por expression , a menos que expression defina una columna de listas, en cuyo caso devuelve la media de cada lista. Para ver ejemplos con mean , consulta las publicación de Comunidad Cómo calcular promedios móviles y Detección de valores atípicos de series temporales simples y desviación estándar con cálculos basados en tablas. |
median |
median(expression) |
Devuelve la mediana de la columna creada por expression , a menos que expression defina una columna de listas, en cuyo caso devuelve la mediana de cada lista. |
min |
min(expression) |
Devuelve el valor mínimo de la columna creada por expression , a menos que expression defina una columna de listas, en cuyo caso devuelve el valor mínimo de cada lista. |
mode |
mode(expression) |
Devuelve la moda de la columna creada por expression , a menos que expression defina una columna de listas, en cuyo caso devuelve la moda de cada lista. |
multinomial |
multinomial(value_1, value_2, ...) |
Devuelve el factorial de la suma de los argumentos dividido por el producto de cada uno de sus factoriales. |
negbinom_dist |
negbinom_dist(num_failures, num_successes, probability, cumulative) |
Devuelve la probabilidad de obtener num_failures fracasos antes de obtener num_successes éxitos, con la probabilidad de éxito probability determinada. Si es cumulative = yes , devuelve la probabilidad acumulada. |
norm_dist |
norm_dist(value, mean, stdev, cumulative) |
Devuelve la posición de value en la distribución normal con los valores mean y stdev proporcionados. Si es cumulative = yes , devuelve la probabilidad acumulada. |
norm_inv |
norm_inv(probability, mean, stdev) |
Devuelve la posición de probability en la distribución normal acumulada inversa. |
norm_s_dist |
norm_s_dist(value, cumulative) |
Devuelve la posición de value en la distribución normal estándar. Si es cumulative = yes , devuelve la probabilidad acumulada. |
norm_s_inv |
norm_s_inv(probability) |
Devuelve la posición de probability en la distribución normal estándar acumulada inversa. |
percent_rank |
percent_rank(column, value) |
Devuelve la clasificación de value en column como un porcentaje de 0 a 1 inclusive, donde column es la columna, el campo, la lista o el rango que contiene el conjunto de datos que se considerará, y value es la columna con el valor para el que se determinará la clasificación de porcentaje.Ejemplo de uso:percent_rank(${view_name.field_1}, ${view_name.field_1}) percent_rank(list(1, 2, 3), ${view_name.field_1}) percent_rank(list(1, 2, 3), 2) |
percentile |
percentile(expression, percentile_value) |
Devuelve el valor de la columna creada por expression correspondiente al percentile_value determinado, a menos que expression defina una columna de listas, en cuyo caso devuelve el valor del percentil para cada lista. percentile_value debe estar entre 0 y 1; de lo contrario, devuelve null . |
pi |
pi() |
Devuelve el valor de pi. |
poisson_dist |
poisson_dist(value, lambda, cumulative) |
Devuelve la posición de value en la distribución de Poisson con el parámetro lambda . Si es cumulative = yes , devuelve la probabilidad acumulada. |
product |
product(expression) |
Devuelve el producto de la columna creada por expression , a menos que expression defina una columna de listas, en cuyo caso devuelve el producto de cada lista. |
radians |
radians(value) |
Convierte value de grados a radianes. |
rank |
rank(value, expression) |
Devuelve la clasificación de value en la columna creada por expression . Por ejemplo, si deseas clasificar los pedidos según su precio de venta total, puedes usar rank(${order_items.total_sale_price},${order_items.total_sale_price}) , que proporciona una clasificación para cada valor de order_items.total_sale_price en tu consulta cuando se compara con toda la columna de order_items.total_sale_price en tu consulta. En el caso en que expression defina varias listas, esta función devuelve el tamaño relativo de value en cada lista. Para ver un ejemplo, consulta la publicación de Comunidad Ranks with Table Calculations. |
rank_avg |
rank_avg(value, expression) |
Devuelve el rango promedio de value en la columna creada por expression , a menos que expression defina una columna de listas, en cuyo caso devuelve el rango promedio de value en cada lista. |
running_product |
running_product(value_column) |
Devuelve un producto acumulado de los valores en value_column . |
running_total |
running_total(value_column) |
Devuelve un total acumulado de los valores en value_column . Para ver un ejemplo, consulta la página de prácticas recomendadas Cómo crear un total acumulado en las columnas con cálculos de tabla. |
sin |
sin(value) |
Devuelve el seno de value . |
skew |
skew(expression) |
Devuelve la asimetría de la muestra de la columna creada por expression , a menos que expression defina una columna de listas, en cuyo caso devuelve la asimetría de la muestra de cada lista. |
slope |
slope(y_column, x_column) |
Devuelve la pendiente de la línea de regresión lineal que pasa por los puntos determinados por y_column y x_column . Para ver un ejemplo, consulta la publicación de Comunidad Cómo realizar previsiones en Looker con cálculos de tablas. |
small |
small(expression, k) |
Devuelve el k º valor más pequeño de la columna creada por expression , a menos que expression defina una columna de listas, en cuyo caso devuelve el k º valor más pequeño de cada lista. |
stddev_pop |
stddev_pop(expression) |
Devuelve la desviación estándar (poblacional) de la columna creada por expression , a menos que expression defina una columna de listas, en cuyo caso devuelve la desviación estándar (poblacional) de cada lista. |
stddev_samp |
stddev_samp(expression) |
Devuelve la desviación estándar (muestra) de la columna creada por expression , a menos que expression defina una columna de listas, en cuyo caso devuelve la desviación estándar (muestra) de cada lista. |
sum |
sum(expression) |
Devuelve la suma de la columna creada por expression , a menos que expression defina una columna de listas, en cuyo caso devuelve la suma de cada lista. Para ver ejemplos que usan sum , consulta las páginas de prácticas recomendadas Cómo calcular el porcentaje del total y Cómo agregar datos en filas (totales de filas) en cálculos basados en tablas. |
t_dist |
t_dist(value, dof, cumulative) |
Devuelve la posición de value en la distribución t de Student con dof grados de libertad. Si es cumulative = yes , devuelve la probabilidad acumulada. |
t_inv |
t_inv(probability, dof) |
Devuelve la posición de probability en la distribución normal acumulada inversa con dof grados de libertad. |
t_test |
t_test(column_1, column_2, tails, type) |
t type : 1 = datos pareados, 2 = homoscedásticos, 3 = heteroscedásticos. |
tan |
tan(value) |
Devuelve la tangente de value . |
var_pop |
var_pop(expression) |
Devuelve la varianza (poblacional) de la columna creada por expression , a menos que expression defina una columna de listas, en cuyo caso devuelve la varianza (poblacional) de cada lista. |
var_samp |
var_samp(expression) |
Devuelve la varianza (muestra) de la columna creada por expression , a menos que expression defina una columna de listas, en cuyo caso devuelve la varianza (muestra) de cada lista. |
weibull_dist |
weibull_dist(value, shape, scale, cumulative) |
Devuelve la posición de value en la distribución de Weibull con los parámetros shape y scale . Si es cumulative = yes , devuelve la probabilidad acumulada. |
z_test |
z_test(data, value, stdev) |
Devuelve el valor P de una cola de la prueba Z con los valores existentes de data y stdev en la media hipotética value . |
Operadores para cualquier expresión de Looker
Puedes usar los siguientes operadores matemáticos estándar:
Operador | Sintaxis | Objetivo |
---|---|---|
+ |
value_1 + value_2 |
Agrega value_1 y value_2 . |
- |
value_1 - value_2 |
Resta value_2 de value_1 . |
* |
value_1 * value_2 |
Multiplica value_1 y value_2 . |
/ |
value_1 / value_2 |
Divide value_1 entre value_2 . |
Funciones de string
Las funciones de cadena operan en oraciones, palabras o letras, que se denominan colectivamente "cadenas". Puedes usar funciones de cadena para poner en mayúscula palabras y letras, extraer partes de una frase, verificar si una palabra o letra está en una frase, o reemplazar elementos de una palabra o frase. Las funciones de cadena también se pueden usar para dar formato a los datos que se muestran en la tabla.
Funciones para cualquier expresión de Looker
Funciones solo para cálculos basados en tablas
Funciones de fecha
Las funciones de fecha te permiten trabajar con fechas y horas.
Funciones para cualquier expresión de Looker
Función | Sintaxis | Objetivo |
---|---|---|
add_days |
add_days(number, date) |
Agrega number días a date . |
add_hours |
add_hours(number, date) |
Agrega number horas a date . |
add_minutes |
add_minutes(number, date) |
Agrega number minutos a date . |
add_months |
add_months(number, date) |
Agrega number meses a date . |
add_seconds |
add_seconds(number, date) |
Agrega number segundos a date . |
add_years |
add_years(number, date) |
Agrega number años a date . |
date |
date(year, month, day) |
Devuelve la fecha "year-month-day " o null si la fecha no sería válida. |
date_time |
date_time(year, month, day, hours, minutes, seconds) |
Devuelve la fecha year-month-day hours:minutes:seconds o null si la fecha no sería válida. |
diff_days |
diff_days(start_date, end_date) |
Devuelve la cantidad de días que hay entre start_date y end_date . Para ver un ejemplo, consulta la publicación de Comunidad Cómo usar fechas en los cálculos de tablas. |
diff_hours |
diff_hours(start_date, end_date) |
Devuelve la cantidad de horas entre start_date y end_date . |
diff_minutes |
diff_minutes(start_date, end_date) |
Devuelve la cantidad de minutos entre start_date y end_date . Para ver un ejemplo, consulta la publicación de Comunidad Cómo usar fechas en los cálculos de tablas. |
diff_months |
diff_months(start_date, end_date) |
Devuelve la cantidad de meses entre start_date y end_date . Para ver un ejemplo, consulta la publicación de Comunidad Cómo agrupar por una dimensión en los cálculos de tablas. |
diff_seconds |
diff_seconds(start_date, end_date) |
Devuelve la cantidad de segundos entre start_date y end_date . |
diff_years |
diff_years(start_date, end_date) |
Devuelve la cantidad de años entre start_date y end_date . |
extract_days |
extract_days(date) |
Extrae los días de date . Para ver un ejemplo, consulta la publicación de Comunidad Cómo usar fechas en los cálculos de tablas. |
extract_hours |
extract_hours(date) |
Extrae las horas de date . |
extract_minutes |
extract_minutes(date) |
Extrae los minutos de date . |
extract_months |
extract_months(date) |
Extrae los meses de date . |
extract_seconds |
extract_seconds(date) |
Extrae los segundos de date . |
extract_years |
extract_years(date) |
Extrae los años de date . |
now |
now() |
Devuelve la fecha y hora actuales. Si deseas ver ejemplos del uso de now , consulta las publicaciones de la Comunidad La función de cálculo basado en tablas Now() ahora controla mejor las zonas horarias y Cómo usar fechas en los cálculos basados en tablas. |
trunc_days |
trunc_days(date) |
Trunca date a días. |
trunc_hours |
trunc_hours(date) |
Trunca date a horas. |
trunc_minutes |
trunc_minutes(date) |
Trunca date a minutos. |
trunc_months |
trunc_months(date) |
Trunca date a meses. |
trunc_years |
trunc_years(date) |
Trunca date a años. |
Funciones solo para cálculos basados en tablas
Función | Sintaxis | Objetivo |
---|---|---|
to_date |
to_date(string) |
Devuelve la fecha y la hora correspondientes a string (AAAA, AAAA-MM, AAAA-MM-DD, AAAA-MM-DD hh, AAAA-MM-DD hh:mm o AAAA-MM-DD hh:mm:ss). |
Funciones, operadores y constantes lógicos
Las funciones y los operadores lógicos se usan para evaluar si algo es verdadero o falso. Las expresiones que usan estos elementos toman un valor, lo evalúan según algunos criterios, devuelven Yes
si se cumplen los criterios y No
si no se cumplen. También hay varios operadores lógicos para comparar valores y combinar expresiones lógicas.
Funciones para cualquier expresión de Looker
Función | Sintaxis | Objetivo |
---|---|---|
case |
case(when(yesno_arg, value_if_yes), when(yesno_arg, value_if_yes), ..., else_value) |
Se agregó el 21.10
Permite la lógica condicional con múltiples condiciones y resultados. Devuelve value_if_yes para el primer caso de when cuyo valor de yesno_arg sea yes . Devuelve else_value si todos los casos de when son no . |
coalesce |
coalesce(value_1, value_2, ...) |
Devuelve el primer valor que no es null en value_1 , value_2 , ... , value_n si se encuentra y null de lo contrario. Para ver ejemplos con coalesce , consulta las publicaciones de la comunidad Cómo crear un total acumulado en las filas con cálculos basados en tablas, Cómo crear un porcentaje del total en las filas con cálculos basados en tablas y Cómo usar pivot_index en los cálculos basados en tablas. |
if |
if(yesno_expression, value_if_yes, value_if_no) |
Si yesno_expression se evalúa como Yes , devuelve el valor value_if_yes . De lo contrario, devuelve el valor value_if_no . Para ver un ejemplo, consulta la publicación de Comunidad Cómo agrupar por una dimensión en los cálculos de tablas. |
is_null |
is_null(value) |
Muestra Yes si value es null , y No en caso contrario. Para ver un ejemplo, consulta la página de documentación Crea expresiones de Looker. Para ver otro ejemplo que usa is_null con el operador NOT , consulta la página de documentación Cómo usar los cálculos de tablas. |
Operadores para cualquier expresión de Looker
Los siguientes operadores de comparación se pueden usar con cualquier tipo de datos:
Se pueden usar los siguientes operadores de comparación con números, fechas y cadenas:
También puedes combinar expresiones de Looker con estos operadores lógicos:
Estos operadores lógicos deben estar en mayúsculas. Los operadores lógicos escritos en minúsculas no funcionarán.
Constantes lógicas
Puedes usar constantes lógicas en las expresiones de Looker. Estas constantes siempre se escriben en minúsculas y tienen los siguientes significados:
Constante | Significado |
---|---|
yes |
Verdadero |
no |
Falso |
null |
Sin valor |
Ten en cuenta que las constantes yes
y no
son los símbolos especiales que significan verdadero o falso en las expresiones de Looker. En cambio, usar comillas, como en "yes"
y "no"
, crea cadenas literales con esos valores.
Las expresiones lógicas se evalúan como verdaderas o falsas sin necesidad de una función if
. Por ejemplo, esto:
if(${field} > 100, yes, no)
es equivalente a lo siguiente:
${field} > 100
También puedes usar null
para indicar que no hay valor. Por ejemplo, es posible que desees determinar si un campo está vacío o asignar un valor vacío en una situación determinada. Esta fórmula no devuelve ningún valor si el campo es inferior a 1, o el valor del campo si es superior a 1:
if(${field} < 1, null, ${field})
Combinación de operadores AND
y OR
Los operadores AND
se evalúan antes que los operadores OR
, a menos que especifiques el orden con paréntesis. Por lo tanto, la siguiente expresión sin paréntesis adicionales:
if (
${order_items.days_to_process}>=4 OR
${order_items.shipping_time}>5 AND
${order_facts.is_first_purchase},
"review", "okay")
se evaluaría de la siguiente manera:
if (
${order_items.days_to_process}>=4 OR
(${order_items.shipping_time}>5 AND ${order_facts.is_first_purchase}),
"review", "okay")
Funciones de posición
Cuando creas cálculos de tabla, puedes usar funciones de transformación posicionales para extraer información sobre los campos en diferentes filas o columnas dinámicas. También puedes crear listas y recuperar el índice de la fila o columna dinámica actual.
Totales de columnas y filas solo para cálculos basados en tablas
Si tu Explorar contiene totales, puedes hacer referencia a los valores totales de las columnas y las filas:
Función | Sintaxis | Objetivo |
---|---|---|
:total |
${field:total} |
Devuelve el total de la columna del campo. |
:row_total |
${field:row_total} |
Devuelve el total de la fila del campo. |
Funciones relacionadas con las filas solo para cálculos basados en tablas
Algunas de estas funciones usan las posiciones relativas de las filas, por lo que cambiar el orden de clasificación de las filas afecta los resultados de las funciones.
Función | Sintaxis | Objetivo |
---|---|---|
index |
index(expression, n) |
Devuelve el valor del elemento n de la columna creada por expression , a menos que expression defina una columna de listas, en cuyo caso devuelve el elemento n de cada lista. |
list |
list(value_1, value_2, ...) |
Crea una lista a partir de los valores proporcionados. Para ver un ejemplo, consulta la publicación de Comunidad Cómo usar listas en los cálculos de tablas. |
lookup |
lookup(value, lookup_column, result_column) |
Devuelve el valor de result_column que se encuentra en la misma fila que value en lookup_column . |
offset |
offset(column, row_offset) |
Devuelve el valor de la fila (n + row_offset) en column , donde n es el número de fila actual. Para ver ejemplos que usan offset , consulta la página de prácticas recomendadas Cómo calcular el porcentaje del valor anterior y el cambio porcentual con cálculos basados en tablas. |
offset_list |
offset_list(column, row_offset, num_values) |
Devuelve una lista de los valores de num_values a partir de la fila (n + row_offset) en column , donde n es el número de fila actual. Para ver un ejemplo, consulta la publicación de Comunidad Cómo calcular promedios móviles. |
row |
row() |
Devuelve el número de fila actual. |
Funciones relacionadas con la dinámica solo para cálculos basados en tablas
Algunas de estas funciones usan las posiciones relativas de las columnas de pivote, por lo que cambiar el orden de clasificación de la dimensión segmentada afecta los resultados de esas funciones.
Función | Sintaxis | Objetivo |
---|---|---|
pivot_column |
pivot_column() |
Devuelve el índice de la columna dinámica actual. |
pivot_index |
pivot_index(expression, pivot_index) |
Evalúa expression en el contexto de la columna de segmentación en la posición pivot_index (1 para la primera segmentación, 2 para la segunda, etcétera). Devuelve nulo para los resultados sin segmentar. Para ver ejemplos con pivot_index , consulta las publicaciones de la comunidad Cómo usar pivot_index en cálculos basados en tablas y Cómo crear un porcentaje del total en filas con cálculos basados en tablas. |
pivot_offset |
pivot_offset(pivot_expression, col_offset) |
Devuelve el valor de pivot_expression en la posición (n + col_offset) , donde n es la posición actual de la columna de segmentación. Devuelve nulo para los resultados sin segmentar. Para ver ejemplos que usan pivot_offset , consulta la publicación de Comunidad Cómo crear un total acumulado en las filas con cálculos basados en tablas y la página de prácticas recomendadas Cómo calcular el porcentaje del valor anterior y el cambio porcentual con cálculos basados en tablas. |
pivot_offset_list |
pivot_offset_list(pivot_expression, col_offset, num_values) |
Devuelve una lista de los valores de num_values en pivot_expression a partir de la posición (n + col_offset) , donde n es el índice de pivote actual. Devuelve null para los resultados sin formato de tabla dinámica. |
pivot_row |
pivot_row(expression) |
Devuelve los valores de expression que se obtuvieron con la función pivot como una lista. Devuelve null para los resultados sin formato de tabla dinámica. Para ver ejemplos que usan pivot_row , consulta las páginas de prácticas recomendadas Cómo calcular el porcentaje del total y Cómo agregar datos en filas (totales de filas) en cálculos basados en tablas. |
pivot_where |
pivot_where(select_expression, expression) |
Devuelve el valor de expression para la columna de tabla dinámica que satisface de forma única select_expression o null si no existe tal columna única. |
Las funciones de segmentación específicas que uses determinarán si el cálculo de la tabla se muestra junto a cada columna segmentada o como una sola columna al final de la tabla.
Funciones de filtro para filtros y campos personalizados
Las funciones de filtro te permiten trabajar con expresiones de filtro para devolver valores basados en datos filtrados. Las funciones de filtro funcionan en filtros personalizados, filtros en medidas personalizadas y dimensiones personalizadas, pero no son válidas en los cálculos de tablas.
Función | Sintaxis | Objetivo |
---|---|---|
matches_filter |
matches_filter(field, filter_expression) |
Devuelve Yes si el valor del campo coincide con la expresión del filtro y No si no coincide. |