Funciones y operadores de Looker

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

  • Cálculos con atajos para hacer rápidamente cálculos comunes en campos numéricos que se encuentran en la tabla de datos de una exploración

Si el administrador te otorgó los permisos para crear campos personalizados, puedes usar las siguientes funciones para realizar funciones comunes con rapidez 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 operadores que puedes usar en ellas. Las funciones y operadores se pueden dividir 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 se admiten solo para los cálculos en tablas (incluidos los cálculos que se usan en el parámetro expression de una prueba de datos).

Esta página se organiza para aclarar qué funciones y operadores están disponibles, según dónde uses tu expresión de Looker.

Operadores y funciones matemáticas

Las funciones y los operadores matemáticos trabajan de una de estas dos maneras:

  • Algunas funciones matemáticas realizan cálculos basados en una sola fila. Por ejemplo, se pueden usar funciones de redondeo, raíz cuadrada, multiplicación y otras similares para los valores de una sola fila, de modo que se muestre 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 continuos, operan en muchas filas. Estas funciones toman muchas filas y las reducen a un solo número, luego muestran el 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 con cálculos de 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 menor o igual que 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 con cálculos de tablas.
rand rand() Muestra un número al azar entre 0 y 1.
round round(value, num_decimals) Muestra value redondeado a num_decimals decimales.

Para ver ejemplos que usan round, consulta las publicaciones de Comunidad Cómo usar pivot_index en cálculos basados en tablas y Desviación estándar y detección de valores atípicos de series temporales simples con cálculos de 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 con cálculos de tablas.

Funciones solo para cálculos basados en tablas

Muchas de estas funciones operan en muchas filas y solo considerarán las filas devueltas por 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 acumulativa 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 bajo 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 independencia entre los datos de actual y expected de la prueba de chi cuadrado. 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 opciones para 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 del estudiante 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 de 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 de 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 acumulativa 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 a partir del sample_size, el número de population_successes y el population_size especificados. 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 de tablas.
kurtosis kurtosis(expression) Muestra la curtosis excedente de muestra de la columna que crea expression, a menos que expression defina una columna de listas, en cuyo caso muestra la curtosis excedente de muestra de cada lista.
large large(expression, k) Muestra el ko valor más grande de la columna creada por expression, a menos que expression defina una columna de listas, en cuyo caso muestra el ko valor más grande de cada lista.
match match(value, expression) Muestra el número de fila del primer caso 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 que crea expression, a menos que expression defina una columna de listas, en cuyo caso muestra el máximo de cada lista.

Para ver ejemplos que usan max, consulta las publicaciones de Comunidad sobre 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) 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 usan mean, consulta la publicación de Comunidad Calcula las medias móviles y la publicación de la Comunidad sobre Desviación estándar y detección de valores atípicos de series temporales simples mediante cálculos de 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 valor 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 creada por 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 errores num_failures antes de obtener éxitos de num_successes, con el probability determinado de éxito. 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 de 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 acumulada.
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 creada por expression correspondiente al percentile_value determinado, a menos que expression defina una columna de listas, en cuyo caso 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 creada por 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 el rango de value en la columna creada por expression. Por ejemplo, si deseas clasificar los pedidos por su precio de venta total, puedes usar rank(${order_items.total_sale_price},${order_items.total_sale_price}), que da 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. Cuando expression define varias listas, esta función muestra el tamaño relativo de value en cada lista.

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

Para ver un ejemplo, consulta la página de prácticas recomendadas Crea un total activo de columnas descendentes con cálculos de tablas.
sin sin(value) Muestra el seno de value.
skew skew(expression) Muestra la asimetría de muestra de la columna creada por 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 de tablas.
small small(expression, k) Muestra el ko valor más pequeño de la columna creada por expression, a menos que expression defina una columna de listas, en cuyo caso muestra el ko valor más pequeño de cada lista.
stddev_pop stddev_pop(expression) Muestra la desviación estándar (población) de la columna creada por expression, a menos que expression defina una columna de listas, en cuyo caso 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 se muestra la desviación estándar (muestra) de cada lista.
sum sum(expression) Muestra la suma de la columna creada por expression, a menos que expression defina una columna de listas, en cuyo caso muestra la suma de cada lista.

Para ver ejemplos que usan sum, consulta las páginas de prácticas recomendadas Agregación en todas las filas (totales de filas) en cálculos de 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 de Student 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, con 1 o 2 tails. type: 1 = emparejada, 2 = homocedastica, 3 = heterocedástica.
tan tan(value) Muestra la tangente de value.
var_pop var_pop(expression) Muestra la varianza (población) de la columna creada por 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 con el data y la 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 por value_2.
/ value_1 / value_2 Divide value_1 por value_2.

Funciones de string

Las funciones de string operan en oraciones, palabras o letras, que colectivamente se denominan "cadenas". Puedes usar funciones de cadena para escribir en mayúscula palabras y letras, extraer partes de una frase, comprobar si una palabra o una 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 string.
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 y consta de length caracteres. start_position comienza en 1, 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 representado por string, o null si la string 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 nula.

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.

Si deseas ver un ejemplo, consulta la publicación de Comunidad sobre cómo usar fechas en cálculos basados en 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.

Si deseas ver un ejemplo, consulta la publicación de Comunidad sobre cómo usar fechas en cálculos basados en 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 Agrupa por una dimensión en cálculos basados en 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.

Si deseas ver un ejemplo, consulta la publicación de Comunidad sobre cómo usar fechas en cálculos basados en 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 del uso de now, consulta las publicaciones de Comunidad sobre Now() Table Calculation Function Has Better Time Zone Handling y Cómo usar fechas en cálculos de tabla.
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 la hora correspondientes a string (YYYY, YYYY-MM, YYYY-MM-DD, YYYY-MM-DD hh, YYYY-MM-DD hh:mm o YYYY-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 los criterios se cumplen y No si los criterios 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) AGREGA 21.10 Permite una lógica condicional con varias condiciones y resultados. Muestra value_if_yes para el primer caso when cuyo valor yesno_arg es yes. Muestra else_value si todos los casos 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.

Para ver ejemplos que usan coalesce, consulta las publicaciones de Comunidad sobre cómo crear un total acumulado en todas las filas con cálculos basados en tablas, Cómo crear un porcentaje del total en todas las filas con cálculos basados en tablas y Cómo usar pivot_index en 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 Agrupa por una dimensión en cálculos basados en 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 en el que se use is_null con el operador NOT, consulta la página de documentación Usa 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 No en caso contrario.
!= value_1 != value_2 Muestra Yes si value_1 no es igual que value_2 y No en caso contrario.

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

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 No en caso contrario.
>= 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 en caso 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 es 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 estar en mayúscula. Los operadores lógicos escritos en minúsculas no funcionarán.

Constantes lógicas

Puedes usar constantes lógicas en 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. Por el contrario, el uso de comillas, como en "yes" y "no", crea cadenas 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 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 ni el valor del campo si es mayor que 1:

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

Combina los 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, se muestra 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

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

Totales de columna y fila solo para cálculos basados en tablas

Si la sección Explorar contiene totales, puedes hacer referencia a los valores totales de las columnas y las filas:

Función Sintaxis Objetivo
:total ${field:total} Muestra el total de la columna del campo.
:row_total ${field:row_total} Muestra el total de la fila 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 que crea 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.

Si deseas ver un ejemplo, consulta la publicación de Comunidad Cómo usar listas en 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 que usan offset, consulta la página de prácticas recomendadas para calcular el porcentaje anterior y el cambio porcentual con cálculos en tablas.
offset_list offset_list(column, row_offset, num_values) Muestra una lista de los valores num_values a partir de la fila (n + row_offset) en column, en la que n es el número de fila actual.

Si deseas ver un ejemplo, consulta la publicación de Comunidad Calcula promedios 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 de tabla dinámica en la posición pivot_index (1 para el primer elemento dinámico, 2 para el segundo, etcétera). Muestra null para los resultados sin dinamizar.

Para ver ejemplos que usan pivot_index, consulta las publicaciones de Comunidad Cómo usar pivot_index en cálculos basados en tablas y Cómo crear un porcentaje del total en las filas con 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), donde n es la posición actual de la columna de tabla dinámica. Muestra null para los resultados sin dinamizar.

Para ver ejemplos que usan pivot_offset, consulta la publicación de Comunidad Cómo crear un total acumulado en todas las filas con cálculos basados en tablas y la página de prácticas recomendadas Cómo calcular el porcentaje de cambios porcentuales anteriores y porcentuales con 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 de tabla dinámica actual. Muestra null para los resultados no dinámicos.
pivot_row pivot_row(expression) Muestra los valores dinámicos de expression como una lista. Muestra null para los resultados no dinámicos.

Para ver ejemplos que usan pivot_row, consulta las páginas de prácticas recomendadas Agregación en todas las filas (totales de filas) en cálculos de 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 esa columna única no existe.

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

Funciones de filtrado para filtros personalizados 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 filtros personalizados, filtros en mediciones personalizadas y dimensiones personalizadas, pero no son válidas en los cálculos basados en 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, y No si no lo hace.