Funciones y operadores de Looker

Si el administrador te otorgó los permisos para crear cálculos en tablas, puedes usar las siguientes funciones para realizar funciones comunes con rapidez sin necesidad de crear expresiones de Looker:

Si el administrador te otorgó los permisos para crear campos personalizados, puedes usar las siguientes funciones para realizar con rapidez funciones comunes sin necesidad de crear expresiones de Looker:

Las expresiones de Looker (a veces llamadas Lexp) se usan para realizar cálculos para lo siguiente:

Una parte importante de estas expresiones son las funciones y los operadores que puedes usar en ellas. Las funciones y los operadores pueden dividirse en algunas categorías básicas:

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 en tablas (incluidos los cálculos basados en tablas que se usan en el parámetro expression de una prueba de datos).

Esta página está organizada para aclarar qué funciones y operadores están disponibles, según el lugar en el que uses tu expresión de Looker.

Operadores y funciones matemáticas

Los operadores y las funciones matemáticas funcionan de una de las siguientes dos maneras:

  • Algunas funciones matemáticas realizan cálculos en función de una única fila. Por ejemplo, se pueden usar funciones similares, el redondeo, la obtención de una raíz cuadrada, la multiplicación y otras funciones similares para los valores de una sola fila, y se muestra un valor distinto para cada fila. Todos los operadores matemáticos, como +, se aplican de a una fila a la vez.
  • Otras funciones matemáticas, como promedios y 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) Muestra el valor absoluto de value.

Para ver un ejemplo, consulta la publicación de Comunidad Desviación estándar y detección de valores atípicos de series temporales simples mediante cálculos basados en tablas.
ceiling ceiling(value) Muestra el número entero más bajo que sea superior o igual a value.
exp exp(value) Muestra e a la potencia de value.
floor floor(value) Muestra el número entero más grande que sea inferior o igual a value.
ln ln(value) Muestra el logaritmo natural de value.
log log(value) Muestra el logaritmo en base 10 de value.
mod mod(value, divisor) Muestra el resto de la división de value por divisor.
power power(base, exponent) Muestra base elevado a la potencia de exponent.

Para ver un ejemplo, consulta la publicación de Comunidad Desviación estándar y detección de valores atípicos de series temporales simples mediante cálculos basados en tablas.
rand rand() Muestra un número aleatorio entre 0 y 1.
round round(value, num_decimals) Muestra value redondeado a num_decimals decimales.

Si deseas ver ejemplos que usen round, consulta las publicaciones de Comunidad Cómo usar pivot_index en cálculos de tablas y Desviación estándar y detección de valores atípicos de series temporales simples mediante cálculos basados en tablas.
sqrt sqrt(value) Muestra la raíz cuadrada de value.

Para ver un ejemplo, consulta la publicación de Comunidad Desviación estándar y detección de valores atípicos de series temporales simples mediante cálculos basados en tablas.

Funciones solo para cálculos basados en tablas

Muchas de estas funciones operan en muchas filas y solo considerarán las filas que muestra tu consulta.

Función Sintaxis Objetivo
acos acos(value) Muestra el coseno inverso de value.
asin asin(value) Muestra el seno inverso de value.
atan atan(value) Muestra la tangente inversa de value.
beta_dist beta_dist(value, alpha, beta, cumulative) Muestra la posición de value en la distribución beta con los parámetros alpha y beta. Si es cumulative = yes, muestra la probabilidad acumulada.
beta_inv beta_inv(probability, alpha, beta) Muestra 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) Muestra la probabilidad de obtener éxitos de num_successes en pruebas de num_tests con el probability determinado de éxito. Si es cumulative = yes, muestra la probabilidad acumulada.
binom_inv binom_inv(num_tests, test_probability, target_probability) Muestra el número más pequeño k de modo que binom(k, num_tests, test_probability, yes) >= target_probability.
chisq_dist chisq_dist(value, dof, cumulative) Muestra la posición de value en la distribución gamma con dof grados de libertad. Si es cumulative = yes, muestra la probabilidad acumulada.
chisq_inv chisq_inv(probability, dof) Muestra la posición de probability en la distribución gamma acumulativa inversa con dof grados de libertad.
chisq_test chisq_test(actual, expected) Muestra 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) Muestra la cantidad de formas de elegir elementos selection_size de un conjunto de tamaño set_size.
confidence_norm confidence_norm(alpha, stdev, n) Muestra la mitad del ancho del intervalo de confianza normal en el nivel de importancia alpha, la desviación estándar stdev y el tamaño de la muestra n.
confidence_t confidence_t(alpha, stdev, n) Muestra la mitad del ancho del intervalo de confianza de la distribución t de Student en el nivel de importancia alpha, la desviación estándar stdev y el tamaño de la muestra n.
correl correl(column_1, column_2) Muestra el coeficiente de correlación de column_1 y column_2.
cos cos(value) Muestra el coseno de value.
count count(expression) Muestra el recuento de valores que no son null en la columna definida por expression, a menos que expression defina una columna de listas, en cuyo caso muestra el recuento en cada lista.
count_distinct count_distinct(expression) Muestra 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 muestra el recuento en cada lista.
covar_pop covar_pop(column_1, column_2) Muestra la covarianza poblacional de column_1 y column_2.
covar_samp covar_samp(column_1, column_2) Muestra la covarianza de muestra de column_1 y column_2.
degrees degrees(value) Convierte value de radianes a grados.
expon_dist expon_dist(value, lambda, cumulative) Muestra la posición de value en la distribución exponencial con el parámetro lambda. Si es cumulative = yes, muestra la probabilidad acumulada.
f_dist f_dist(value, dof_1, dof_2, cumulative) Muestra la posición de value en la distribución F con los parámetros dof_1 y dof_2. Si es cumulative = yes, muestra la probabilidad acumulada.
f_inv f_inv(probability, dof_1, dof_2) Muestra la posición de probability en la distribución F acumulada inversa con los parámetros dof_1 y dof_2.
fact fact(value) Muestra el factorial de value.
gamma_dist gamma_dist(value, alpha, beta, cumulative) Muestra la posición de value en la distribución gamma con los parámetros alpha y beta. Si es cumulative = yes, muestra la probabilidad acumulada.
gamma_inv gamma_inv(probability, alpha, beta) Muestra la posición de probability en la distribución gamma acumulativa inversa con los parámetros alpha y beta.
geomean geomean(expression) Muestra la media geométrica de la columna creada por expression, a menos que expression defina una columna de listas, en cuyo caso muestra la media geométrica de cada lista.
hypgeom_dist hypgeom_dist(sample_successes, sample_size, population_successes, population_size, cumulative) Muestra la probabilidad de obtener sample_successes del sample_size especificado, la cantidad de population_successes y population_size. Si es cumulative = yes, muestra la probabilidad acumulada.
intercept intercept(y_column, x_column) Muestra 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 basados en tablas.
kurtosis kurtosis(expression) Muestra la curtosis en exceso de muestra de la columna creada por expression, a menos que expression defina una columna de listas, en cuyo caso muestra la curtosis en exceso de muestra de cada lista.
large large(expression, k) Muestra el k.o valor más grande de la columna que creó expression, a menos que expression defina una columna de listas, en cuyo caso muestra el k.o valor más grande de cada lista.
match match(value, expression) Muestra 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 muestra la posición de value en cada lista.
max max(expression) Muestra el máximo de la columna creada por expression, a menos que expression defina una columna de listas, en cuyo caso muestra el máximo de cada lista.

Si deseas ver ejemplos que usan max, consulta las publicaciones de Comunidad Cómo usar listas en los cálculos de tablas y Cómo agrupar por una dimensión en los cálculos de tablas.
mean mean(expression) Muestra la media de la columna creada por expression, a menos que expression defina una columna de listas, en cuyo caso muestra la media de cada lista.

Para ver ejemplos que usen mean, consulta la publicación de Comunidad Cálculo de medias móviles y la publicación de Comunidad sobre Desviación estándar y detección de valores atípicos de series temporales simples mediante cálculos basados en tablas.
median median(expression) Muestra la mediana de la columna creada por expression, a menos que expression defina una columna de listas, en cuyo caso muestra la mediana de cada lista.
min min(expression) Muestra el mínimo de la columna que crea expression, a menos que expression defina una columna de listas, en cuyo caso muestra el mínimo de cada lista.
mode mode(expression) Muestra el modo de la columna que crea expression, a menos que expression defina una columna de listas, en cuyo caso muestra el modo de cada lista.
multinomial multinomial(value_1, value_2, ...) Muestra 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) Muestra la probabilidad de obtener fallas de num_failures antes de obtener éxitos de num_successes, con la probability de éxito especificada. Si es cumulative = yes, muestra la probabilidad acumulada.
norm_dist norm_dist(value, mean, stdev, cumulative) Muestra la posición de value en la distribución normal con los valores mean y stdev especificados. Si es cumulative = yes, muestra la probabilidad acumulada.
norm_inv norm_inv(probability, mean, stdev) Muestra la posición de probability en la distribución normal acumulada inversa.
norm_s_dist norm_s_dist(value, cumulative) Muestra la posición de value en la distribución normal estándar. Si es cumulative = yes, muestra la probabilidad acumulada.
norm_s_inv norm_s_inv(probability) Muestra la posición de probability en la distribución normal estándar inversa.
percent_rank percent_rank(column, value) Muestra 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 debe considerar; y value es la columna con el valor para el que se determinará la clasificación porcentual.

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(value_column, percentile_value) Muestra el valor de la columna que creó expression correspondiente a la percentile_value especificada, a menos que expression defina una columna de listas, en cuyo caso se muestra el valor de percentil para cada lista. percentile_value debe estar entre 0 y 1; de lo contrario, muestra null.
pi pi() Muestra el valor de pi.
poisson_dist poisson_dist(value, lambda, cumulative) Muestra la posición de value en la distribución de Poisson con el parámetro lambda. Si es cumulative = yes, muestra la probabilidad acumulada.
product product(expression) Muestra el producto de la columna que creó expression, a menos que expression defina una columna de listas, en cuyo caso muestra el producto de cada lista.
radians radians(value) Convierte value de grados a radianes.
rank rank(value, expression) Muestra la clasificación de value en la columna que creó expression. Por ejemplo, si deseas clasificar los pedidos por su precio de oferta total, puedes usar rank(${order_items.total_sale_price},${order_items.total_sale_price}), que otorga una clasificación para cada valor de order_items.total_sale_price en tu consulta cuando se compara con la columna completa de order_items.total_sale_price en ella. En el caso de que expression defina varias listas, esta función mostrará el tamaño relativo de value en cada lista.

Para ver un ejemplo, consulta la publicación de Comunidad Rankings con cálculos de tablas.
rank_avg rank_avg(value, expression) Muestra la clasificación promedio de value en la columna creada por expression, a menos que expression defina una columna de listas, en cuyo caso muestra la clasificación promedio de value en cada lista.
running_product running_product(value_column) Muestra un producto en ejecución de los valores en value_column.
running_total running_total(value_column) Muestra un total acumulado de los valores en value_column.

Si deseas ver un ejemplo, consulta la página de recomendaciones Crear un total de columnas descendentes con cálculos basados en tablas.
sin sin(value) Muestra el seno de value.
skew skew(expression) Muestra la asimetría de muestra de la columna que crea expression, a menos que expression defina una columna de listas, en cuyo caso muestra la asimetría de muestra de cada lista.
slope slope(y_column, x_column) Muestra la pendiente de la línea de regresión lineal a través de 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 basados en tablas.
small small(expression, k) Muestra el ko valor más pequeño más pequeño de la columna que creó expression, a menos que expression defina una columna de listas, en cuyo caso muestra el valor k más pequeño de cada lista.
stddev_pop stddev_pop(expression) Muestra la desviación estándar (propagación) de la columna que crea expression, a menos que expression defina una columna de listas, en cuyo caso se muestra la desviación estándar (propagación) de cada lista.
stddev_samp stddev_samp(expression) Muestra la desviación estándar (muestra) de la columna que crea expression, a menos que expression defina una columna de listas, en cuyo caso muestra la desviación estándar (muestra) de cada lista.
sum sum(expression) Muestra la suma de la columna que crea expression, a menos que expression defina una columna de listas, en cuyo caso se muestra la suma de cada lista.

Si deseas ver ejemplos en los que se usa sum, consulta las páginas de prácticas recomendadas Cómo agregar datos entre filas (totales de filas) en los cálculos basados en tablas y Cómo calcular el porcentaje del total.
t_dist t_dist(value, dof, cumulative) Muestra la posición de value en la distribución t del estudiante con dof grados de libertad. Si es cumulative = yes, muestra la probabilidad acumulada.
t_inv t_inv(probability, dof) Muestra 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) Muestra el resultado de una prueba t de un estudiante en los datos de column_1 y column_2 mediante 1 o 2 tails. type: 1 = paredado, 2 = homocedástica, 3 = heterocedástica.
tan tan(value) Muestra la tangente de value.
var_pop var_pop(expression) Muestra la varianza (población) de la columna que crea expression, a menos que expression defina una columna de listas, en cuyo caso muestra la varianza (población) de cada lista.
var_samp var_pop(expression) Muestra la varianza (muestra) de la columna que crea expression, a menos que expression defina una columna de listas, en cuyo caso muestra la varianza (muestra) de cada lista.
weibull_dist weibull_dist(value, shape, scale, cumulative) Muestra la posición de value en la distribución de Weibull con los parámetros shape y scale. Si es cumulative = yes, muestra la probabilidad acumulada.
z_test z_test(data, value, stdev) Muestra el valor p de una cola de la prueba z usando los data y stdev existentes en la value media hipotética.

Operadores para cualquier expresión de Looker

Puedes usar los siguientes operadores matemáticos estándar:

Operador Sintaxis Objetivo
+ value_1 + value_2 Se agregaron 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 por 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 utilizar mayúsculas en palabras y letras, extraer partes de una frase, comprobar si una palabra o letra está en una frase, o reemplazar elementos de una palabra o frase. Las funciones de string también se pueden usar para dar formato a los datos que se muestran en la tabla.

Funciones para cualquier expresión de Looker

Función Sintaxis Objetivo
concat concat(value_1, value_2, ...) Muestra value_1, value_2, ..., value_n unidos como una cadena.
contains contains(string, search_string) Muestra Yes si string contiene search_string y, de lo contrario, No. La función contains distingue mayúsculas de minúsculas.
length length(string) Muestra la cantidad de caracteres en string.
lower lower(string) Muestra string con todos los caracteres convertidos en minúsculas.
position position(string, search_string) Muestra el índice de inicio de search_string en string si existe, y 0 de lo contrario.
replace replace(string, old_string, new_string) Muestra string con todos los casos de old_string reemplazados por new_string.
substring substring(string, start_position, length) Muestra la subcadena de string, que comienza en start_position, que consta de caracteres length. El start_position comienza en 1, en el que 1 indica el primer carácter de la cadena, 2 indica el segundo carácter de la cadena y así sucesivamente.
upper upper(string) Muestra string con todos los caracteres convertidos en mayúsculas.

Funciones solo para cálculos basados en tablas

Función Sintaxis Objetivo
split split(string, delimeter) Muestra una lista de cadenas en string divididas por delimiter.
to_number to_number(string) Muestra el número que representa string o null si la cadena no se puede convertir.
to_string to_string(value) Muestra la representación de cadena de value o una cadena vacía si value es nulo.

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) Muestra la fecha "year-month-day" o null si la fecha no es válida.
date_time date_time(year, month, day, hours, minutes, seconds) Muestra la fecha year-month-day hours:minutes:seconds o null si la fecha no es válida.
diff_days diff_days(start_date, end_date) Muestra la cantidad de días 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) Muestra la cantidad de horas entre start_date y end_date.
diff_minutes diff_minutes(start_date, end_date) Muestra 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) Muestra 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) Muestra la cantidad de segundos entre start_date y end_date.
diff_years diff_years(start_date, end_date) Muestra 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() Muestra la fecha y hora actuales.

Para ver ejemplos de now, consulta La función de cálculo de tablas Now() tiene un mejor control de la zona horaria y Cómo usar fechas en los cálculos de tablas las publicaciones de Comunidad.
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) Muestra la fecha y 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ógicas

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 en función de algunos criterios, muestran Yes si se cumplen los criterios y No si no se cumplen. También existen 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) AGREGAR 21.10 Permite la lógica condicional con varias condiciones y resultados. Muestra value_if_yes para el primer caso de when cuyo valor yesno_arg es yes. Muestra else_value si todos los casos de when son no.
coalesce coalesce(value_1, value_2, ...) Muestra el primer valor que no es null en value_1, value_2, ..., value_n si se encuentra y null en caso contrario.

Si deseas ver ejemplos que usan coalesce, consulta Cómo crear un total acumulado en filas con cálculos basados en tablas, Cómo crear un porcentaje del total en filas con cálculos basados en tablas y Cómo usar pivot_index en los cálculos de tablas.
if if(yesno_expression, value_if_yes, value_if_no) Si yesno_expression se evalúa como Yes, muestra el valor value_if_yes. De lo contrario, muestra 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 cálculos basados en tablas.

Operadores para cualquier expresión de Looker

Los siguientes operadores de comparación se pueden usar con cualquier tipo de datos:

Operador Sintaxis Objetivo
= value_1 = value_2 Muestra Yes si value_1 es igual a value_2 y, de lo contrario, No.
!= value_1 != value_2 Muestra Yes si value_1 no es igual a value_2, y No de lo contrario.

Los siguientes operadores de comparación se pueden usar con números, fechas y strings:

Operador Sintaxis Objetivo
> value_1 > value_2 Muestra Yes si value_1 es mayor que value_2, y No en caso contrario.
< value_1 < value_2 Muestra Yes si value_1 es menor que value_2 y, de lo contrario, No.
>= value_1 >= value_2 Muestra Yes si value_1 es mayor o igual que value_2, y No en caso contrario.
<= value_1 <= value_2 Muestra Yes si value_1 es menor o igual que value_2, y No de lo contrario.

También puedes combinar expresiones de Looker con estos operadores lógicos:

Operador Sintaxis Objetivo
AND value_1 AND value_2 Muestra Yes si value_1 y value_2 son Yes, y No en caso contrario.
OR value_1 OR value_2 Muestra Yes si value_1 o value_2 son Yes, y No en caso contrario.
NOT NOT value Muestra Yes si value es No y No en caso contrario.

Estos operadores lógicos deben ir con mayúscula. 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úscula y tienen estos significados:

Constante Significado
yes Verdadero
no Falso
null Sin valor

Ten en cuenta que las constantes yes y no son símbolos especiales que significan verdadero o falso en las expresiones de Looker. Por el contrario, el uso de comillas, como en "yes" y "no", crea strings literales con esos valores.

Las expresiones lógicas se evalúan como verdadero o falso sin requerir una función if. Por ejemplo:

if(${field} > 100, yes, no)

equivale a lo siguiente:

${field} > 100

También puedes usar null para indicar que no hay ningún 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 menor que 1 o el valor del campo si es mayor que 1:

if(${field} < 1, null, ${field})

Combina operadores AND y OR

Los operadores AND se evalúan antes que los operadores OR, si no especificas el orden entre 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 posicionales

Al crear cálculos basados en tablas, puedes usar funciones de transformación posicional para extraer información sobre campos de diferentes filas o columnas dinámicas. También puedes crear listas y recuperar el índice actual de filas o columnas dinámicas.

Totales de columnas y filas solo para los cálculos basados en tablas

Si Explorar contiene totales, puedes hacer referencia a valores totales de columnas y filas:

Función Sintaxis Objetivo
:total ${field:total} Muestra el total de la columna del campo.
:row_total ${field:row_total} Muestra la fila total del campo.

Algunas de estas funciones usan las posiciones relativas de las filas, por lo que cambiar el orden de las filas afecta los resultados de las funciones.

Función Sintaxis Objetivo
index index(expression, n) Muestra el valor del elemento n de la columna creada por expression, a menos que expression defina una columna de listas, en cuyo caso muestra el elemento n de cada lista.
list list(value_1, value_2, ...) Crea una lista a partir de los valores especificados.

Para ver un ejemplo, consulta la publicación de Comunidad Cómo usar listas en los cálculos basados en tablas.
lookup lookup(value, lookup_column, result_column) Muestra el valor en result_column que está en la misma fila que value está en lookup_column.
offset offset(column, row_offset) Muestra el valor de la fila (n + row_offset) en column, en el que n es el número de fila actual.

Para ver ejemplos en los que se use offset, consulta la página de prácticas recomendadas Cómo calcular el porcentaje anterior y el cambio porcentual con cálculos basados en tablas.
offset_list offset_list(column, row_offset, num_values) Muestra una lista de los valores de num_values que comienza en 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 las medias móviles.
row row() Muestra el número de fila actual.

Algunas de estas funciones usan las posiciones relativas de las columnas dinámicas, por lo que cambiar el orden de clasificación de la dimensión dinámica afecta los resultados de esas funciones.

Función Sintaxis Objetivo
pivot_column pivot_column() Muestra el índice de la columna dinámica actual.
pivot_index pivot_index(expression, pivot_index) Evalúa expression en el contexto de la columna dinámica en la posición pivot_index (1 para el primer elemento dinámico, 2 para el segundo elemento dinámico, etcétera). Muestra un valor nulo para los resultados no dinámicos.

Para ver ejemplos que usen pivot_index, consulta las publicaciones de Comunidad Cómo usar pivot_index en cálculos de tablas y Cómo crear un porcentaje del total en las filas con los cálculos basados en tablas.
pivot_offset pivot_offset(pivot_expression, col_offset) Muestra el valor de pivot_expression en la posición (n + col_offset), en la que n es la posición actual de la columna dinámica. Muestra un valor nulo para los resultados no dinámicos.

Para ver ejemplos en los que se use pivot_offset, consulta la publicación de Comunidad Cómo crear un total acumulado en filas con cálculos basados en tablas y la página de prácticas recomendadas Cómo calcular el porcentaje anterior y el cambio porcentual con los cálculos basados en tablas.
pivot_offset_list pivot_offset_list(pivot_expression, col_offset, num_values) Muestra una lista de los valores num_values en pivot_expression a partir de la posición (n + col_offset), donde n es el índice dinámico actual. Muestra null para los resultados sin dinamizar.
pivot_row pivot_row(expression) Muestra los valores dinámicos de expression como una lista. Muestra null para los resultados sin dinamizar.

Si deseas ver ejemplos en los que se usa pivot_row, consulta las páginas de prácticas recomendadas Cómo agregar datos entre filas (totales de filas) en los cálculos basados en tablas y Cómo calcular el porcentaje del total.
pivot_where pivot_where(select_expression, expression) Muestra el valor de expression para la columna dinámica que satisface de forma única select_expression o null si no existe esa columna única.

Las funciones dinámicas específicas que utilices determinan si el cálculo basado en tablas se muestra junto a cada columna dinámica o como una sola columna al final de la tabla.

Funciones de filtrado para filtros y campos personalizados

Las funciones de filtro te permiten trabajar con expresiones de filtro para mostrar valores basados en datos filtrados. Las funciones de filtro funcionan en los filtros personalizados, los filtros en mediciones personalizadas y las dimensiones personalizadas, pero no son válidas para los cálculos de tablas.

Función Sintaxis Objetivo
matches_filter matches_filter(field, filter_expression) Muestra Yes si el valor del campo coincide con la expresión de filtro, No si no lo es.