Funções e operadores do Looker

Se o administrador lhe tiver concedido as autorizações para criar cálculos de tabelas, pode usar as seguintes funcionalidades para executar rapidamente funções comuns sem ter de criar expressões do Looker:

  • Cálculos de atalho para executar rapidamente cálculos comuns em campos numéricos que se encontram na tabela de dados de uma análise detalhada

Se o seu administrador lhe tiver concedido as autorizações para criar campos personalizados, pode usar as seguintes funcionalidades para executar rapidamente funções comuns sem ter de criar expressões do Looker:

As expressões do Looker (por vezes, denominadas Lexp) são usadas para fazer cálculos para:

Uma parte importante destas expressões são as funções e os operadores que pode usar nas mesmas. As funções e os operadores podem ser divididos em algumas categorias básicas:

Algumas funções só estão disponíveis para cálculos de tabelas

As expressões do Looker para filtros personalizados e campos personalizados não suportam funções do Looker que convertem tipos de dados, agregam dados de várias linhas ou fazem referência a outras linhas ou colunas dinâmicas. Estas funções são suportadas apenas para cálculos de tabelas (incluindo cálculos de tabelas usados no parâmetro expression de um teste de dados).

Esta página está organizada para esclarecer que funções e operadores estão disponíveis, consoante o local onde está a usar a sua expressão do Looker.

Funções e operadores matemáticos

As funções e os operadores matemáticos funcionam de uma de duas formas:

  • Algumas funções matemáticas efetuam cálculos com base numa única linha. Por exemplo, o arredondamento, a raiz quadrada, a multiplicação e funções semelhantes podem ser usados para valores numa única linha, devolvendo um valor distinto para cada linha. Todos os operadores matemáticos, como +, são aplicados uma linha de cada vez.
  • Outras funções matemáticas, como médias e totais acumulados, operam em muitas linhas. Estas funções usam várias linhas e reduzem-nas a um único número, e, em seguida, apresentam esse mesmo número em todas as linhas.

Funções para qualquer expressão do Looker

Função Sintaxe Finalidade
abs abs(value) Devolve o valor absoluto de value.

Para ver um exemplo, consulte a publicação da comunidade Desvio padrão e deteção simples de valores atípicos de séries cronológicas com cálculos de tabelas.
ceiling ceiling(value) Devolve o menor número inteiro igual ou superior a value.
exp exp(value) Devolve e elevado à potência de value.
floor floor(value) Devolve o maior número inteiro igual ou inferior a value.
ln ln(value) Devolve o logaritmo natural de value.
log log(value) Devolve o logaritmo de base 10 de value.
mod mod(value, divisor) Devolve o resto da divisão de value por divisor.
power power(base, exponent) Devolve base elevado à potência de exponent.

Para ver um exemplo, consulte a publicação da comunidade Desvio padrão e deteção simples de valores atípicos de séries cronológicas com cálculos de tabelas.
rand rand() Devolve um número aleatório entre 0 e 1.
round round(value, num_decimals) Devolve value arredondado a num_decimals casas decimais.

Para ver exemplos que usam round, consulte as publicações da comunidade Usar pivot_index em cálculos de tabelas e Desvio padrão e deteção de valores atípicos de séries cronológicas simples usando cálculos de tabelas.
sqrt sqrt(value) Devolve a raiz quadrada de value.

Para ver um exemplo, consulte a publicação da comunidade Desvio padrão e deteção simples de valores atípicos de séries cronológicas com cálculos de tabelas.

Funções apenas para cálculos da tabela

Muitas destas funções operam em várias linhas e só consideram as linhas devolvidas pela sua consulta.

Função Sintaxe Finalidade
acos acos(value) Devolve o cosseno inverso de value.
asin asin(value) Devolve o seno inverso de value.
atan atan(value) Devolve a tangente inversa de value.
beta_dist beta_dist(value, alpha, beta, cumulative) Devolve a posição de value na distribuição beta com os parâmetros alpha e beta. Se cumulative = yes, devolve a probabilidade cumulativa.
beta_inv beta_inv(probability, alpha, beta) Devolve a posição de probability na distribuição cumulativa beta inversa com parâmetros alpha e beta.
binom_dist binom_dist(num_successes, num_tests, probability, cumulative) Devolve a probabilidade de obter num_successes êxitos em num_tests testes com a probability de êxito indicada. Se cumulative = yes, devolve a probabilidade cumulativa.
binom_inv binom_inv(num_tests, test_probability, target_probability) Devolve o menor número k tal que binom(k, num_tests, test_probability, yes) >= target_probability.
chisq_dist chisq_dist(value, dof, cumulative) Devolve a posição de value na distribuição gama com dof graus de liberdade. Se cumulative = yes, devolve a probabilidade cumulativa.
chisq_inv chisq_inv(probability, dof) Devolve a posição de probability na distribuição gama cumulativa inversa com dof graus de liberdade.
chisq_test chisq_test(actual, expected) Devolve a probabilidade do teste qui-quadrado de independência entre os dados actual e expected. actual pode ser uma coluna ou uma coluna de listas, e expected tem de ser do mesmo tipo.
combin combin(set_size, selection_size) Devolve o número de formas de escolher selection_size elementos de um conjunto de tamanho set_size.
confidence_norm confidence_norm(alpha, stdev, n) Devolve metade da largura do intervalo de confiança normal ao nível de significância alpha, desvio padrão stdev e tamanho da amostra n.
confidence_t confidence_t(alpha, stdev, n) Devolve metade da largura do intervalo de confiança da distribuição t de Student ao nível de significância alpha, desvio padrão stdev e tamanho da amostra n.
correl correl(column_1, column_2) Devolve o coeficiente de correlação de column_1 e column_2.
cos cos(value) Devolve o cosseno de value.
count count(expression) Devolve a contagem de valores não null na coluna definida por expression, a menos que expression defina uma coluna de listas, caso em que devolve a contagem em cada lista.
count_distinct count_distinct(expression) Devolve a contagem de valores não null distintos na coluna definida por expression, a menos que expression defina uma coluna de listas, caso em que devolve a contagem em cada lista.
covar_pop covar_pop(column_1, column_2) Devolve a covariância da população de column_1 e column_2.
covar_samp covar_samp(column_1, column_2) Devolve a covariância de amostra de column_1 e column_2.
degrees degrees(value) Converte value de radianos para graus.
expon_dist expon_dist(value, lambda, cumulative) Devolve a posição de value na distribuição exponencial com o parâmetro lambda. Se cumulative = yes, devolve a probabilidade cumulativa.
f_dist f_dist(value, dof_1, dof_2, cumulative) Devolve a posição de value na distribuição F com os parâmetros dof_1 e dof_2. Se cumulative = yes, devolve a probabilidade cumulativa.
f_inv f_inv(probability, dof_1, dof_2) Devolve a posição de probability na distribuição F cumulativa inversa com os parâmetros dof_1 e dof_2.
fact fact(value) Devolve o fatorial de value.
gamma_dist gamma_dist(value, alpha, beta, cumulative) Devolve a posição de value na distribuição gama com os parâmetros alpha e beta. Se cumulative = yes, devolve a probabilidade cumulativa.
gamma_inv gamma_inv(probability, alpha, beta) Devolve a posição de probability na distribuição gama cumulativa inversa com parâmetros alpha e beta.
geomean geomean(expression) Devolve a média geométrica da coluna criada por expression, a menos que expression defina uma coluna de listas, caso em que devolve a média geométrica de cada lista.
hypgeom_dist hypgeom_dist(sample_successes, sample_size, population_successes, population_size, cumulative) Devolve a probabilidade de obter sample_successes a partir do número de sample_size, do número de population_successes e de population_size fornecidos. Se cumulative = yes, devolve a probabilidade cumulativa.
intercept intercept(y_column, x_column) Devolve a interceção da linha de regressão linear através dos pontos determinados por y_column e x_column.

Para ver um exemplo, consulte a publicação da comunidade Como fazer previsões no Looker com cálculos de tabelas.
kurtosis kurtosis(expression) Devolve a curtose excessiva da amostra da coluna criada por expression, a menos que expression defina uma coluna de listas, caso em que devolve a curtose excessiva da amostra de cada lista.
large large(expression, k) Devolve o k-ésimo maior valor da coluna criada por expression, a menos que expression defina uma coluna de listas, caso em que devolve o k-ésimo maior valor de cada lista.
match match(value, expression) Devolve o número da linha da primeira ocorrência de value na coluna criada por expression, a menos que expression defina uma coluna de listas, caso em que devolve a posição de value em cada lista.
max max(expression) Devolve o valor máximo da coluna criada por expression, a menos que expression defina uma coluna de listas, caso em que devolve o valor máximo de cada lista.

Para ver exemplos que usam max, consulte as publicações da comunidade Usar listas em cálculos de tabelas e Agrupar por uma dimensão em cálculos de tabelas.
mean mean(expression) Devolve a média da coluna criada por expression, a menos que expression defina uma coluna de listas, caso em que devolve a média de cada lista.

Para ver exemplos que usam mean, consulte a publicação da comunidade Calcular médias móveis e a publicação da comunidade Desvio padrão e deteção de valores atípicos de séries cronológicas simples com cálculos de tabelas.
median median(expression) Devolve a mediana da coluna criada por expression, a menos que expression defina uma coluna de listas, caso em que devolve a mediana de cada lista.
min min(expression) Devolve o mínimo da coluna criada por expression, a menos que expression defina uma coluna de listas, caso em que devolve o mínimo de cada lista.
mode mode(expression) Devolve a moda da coluna criada por expression, a menos que expression defina uma coluna de listas, caso em que devolve a moda de cada lista.
multinomial multinomial(value_1, value_2, ...) Devolve o fatorial da soma dos argumentos dividido pelo produto de cada um dos respetivos fatoriais.
negbinom_dist negbinom_dist(num_failures, num_successes, probability, cumulative) Devolve a probabilidade de obter num_failures falhas antes de obter num_successes êxitos, com a probability de êxito especificada. Se cumulative = yes, devolve a probabilidade cumulativa.
norm_dist norm_dist(value, mean, stdev, cumulative) Devolve a posição de value na distribuição normal com a mean e o stdev indicados. Se cumulative = yes, devolve a probabilidade cumulativa.
norm_inv norm_inv(probability, mean, stdev) Devolve a posição de probability na distribuição cumulativa normal inversa.
norm_s_dist norm_s_dist(value, cumulative) Devolve a posição de value na distribuição normal padrão. Se cumulative = yes, devolve a probabilidade cumulativa.
norm_s_inv norm_s_inv(probability) Devolve a posição de probability na distribuição cumulativa normal padrão inversa.
percent_rank percent_rank(column, value) Devolve a classificação de value em column como uma percentagem de 0 a 1, inclusive, em que column é a coluna, o campo, a lista ou o intervalo que contém o conjunto de dados a considerar; e value é a coluna com o valor para o qual a classificação percentual vai ser determinada.

Exemplos de utilização:

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) Devolve o valor da coluna criada por expression correspondente ao percentile_value fornecido, a menos que expression defina uma coluna de listas, caso em que devolve o valor percentil para cada lista. percentile_value tem de ser entre 0 e 1; caso contrário, devolve null.
pi pi() Devolve o valor de pi.
poisson_dist poisson_dist(value, lambda, cumulative) Devolve a posição de value na distribuição de Poisson com o parâmetro lambda. Se cumulative = yes, devolve a probabilidade cumulativa.
product product(expression) Devolve o produto da coluna criada por expression, a menos que expression defina uma coluna de listas, caso em que devolve o produto de cada lista.
radians radians(value) Converte value de graus para radianos.
rank rank(value, expression) Devolve a classificação de value na coluna criada por expression. Por exemplo, se quiser classificar as encomendas pelo respetivo preço de venda total, pode usar rank(${order_items.total_sale_price},${order_items.total_sale_price}), que atribui uma classificação a cada valor de order_items.total_sale_price na sua consulta quando o compara com a coluna inteira de order_items.total_sale_price na sua consulta. No caso em que o elemento expression define várias listas, esta função devolve o tamanho relativo do elemento value em cada lista.

Para ver um exemplo, consulte a publicação da comunidade Classificações com cálculos de tabelas.
rank_avg rank_avg(value, expression) Devolve a classificação média de value na coluna criada por expression, a menos que expression defina uma coluna de listas, caso em que devolve a classificação média de value em cada lista.
running_product running_product(value_column) Devolve um produto cumulativo dos valores em value_column.
running_total running_total(value_column) Devolve um total ativo dos valores em value_column.

Para ver um exemplo, consulte a página de práticas recomendadas Criar um total acumulado nas colunas com cálculos de tabelas.
sin sin(value) Devolve o seno de value.
skew skew(expression) Devolve a assimetria da amostra da coluna criada por expression, a menos que expression defina uma coluna de listas, caso em que devolve a assimetria da amostra de cada lista.
slope slope(y_column, x_column) Devolve o declive da linha de regressão linear através de pontos determinados por y_column e x_column.

Para ver um exemplo, consulte a publicação da comunidade Como fazer previsões no Looker com cálculos de tabelas.
small small(expression, k) Devolve o kth valor mais pequeno da coluna criada por expression, a menos que expression defina uma coluna de listas, caso em que devolve o kth valor mais pequeno de cada lista.
stddev_pop stddev_pop(expression) Devolve o desvio padrão (população) da coluna criada por expression, a menos que expression defina uma coluna de listas, caso em que devolve o desvio padrão (população) de cada lista.
stddev_samp stddev_samp(expression) Devolve o desvio padrão (amostra) da coluna criada por expression, a menos que expression defina uma coluna de listas, caso em que devolve o desvio padrão (amostra) de cada lista.
sum sum(expression) Devolve a soma da coluna criada por expression, a menos que expression defina uma coluna de listas, caso em que devolve a soma de cada lista.

Para ver exemplos com sum, consulte as páginas de práticas recomendadas Agregação em linhas (totais de linhas) em cálculos de tabelas e Como calcular a percentagem do total.
t_dist t_dist(value, dof, cumulative) Devolve a posição de value na distribuição t de Student com dof graus de liberdade. Se cumulative = yes, devolve a probabilidade cumulativa.
t_inv t_inv(probability, dof) Devolve a posição de probability na distribuição cumulativa normal inversa com dof graus de liberdade.
t_test t_test(column_1, column_2, tails, type) Devolve o resultado do teste t de t nos dados de column_1 e column_2, usando 1 ou 2 tails. type: 1 = aos pares, 2 = homocedástico, 3 = heterocedástico.
tan tan(value) Devolve a tangente de value.
var_pop var_pop(expression) Devolve a variância (população) da coluna criada por expression, a menos que expression defina uma coluna de listas, caso em que devolve a variância (população) de cada lista.
var_samp var_samp(expression) Devolve a variância (amostra) da coluna criada por expression, a menos que expression defina uma coluna de listas, caso em que devolve a variância (amostra) de cada lista.
weibull_dist weibull_dist(value, shape, scale, cumulative) Devolve a posição de value na distribuição de Weibull com os parâmetros shape e scale. Se cumulative = yes, devolve a probabilidade cumulativa.
z_test z_test(data, value, stdev) Devolve o valor P unilateral do teste Z usando o data e o stdev existentes na média hipotética value.

Operadores para qualquer expressão do Looker

Pode usar os seguintes operadores matemáticos padrão:

Operador Sintaxe Finalidade
+ value_1 + value_2 Adiciona value_1 e value_2.
- value_1 - value_2 Subtrai value_2 de value_1.
* value_1 * value_2 Multiplica value_1 e value_2.
/ value_1 / value_2 Divide value_1 por value_2.

Funções de string

As funções de string operam em frases, palavras ou letras, que são denominadas coletivamente "strings". Pode usar funções de string para escrever palavras e letras em maiúsculas, extrair partes de uma expressão, verificar se uma palavra ou uma letra está numa expressão ou substituir elementos de uma palavra ou uma expressão. As funções de string também podem ser usadas para formatar os dados devolvidos na tabela.

Funções para qualquer expressão do Looker

Função Sintaxe Finalidade
concat concat(value_1, value_2, ...) Devolve value_1, value_2, ... e value_n unidos como uma string.
contains contains(string, search_string) Devolve Yes se string contiver search_string e No caso contrário. A função contains é sensível a maiúsculas e minúsculas.
length length(string) Devolve o número de carateres em string.
lower lower(string) Devolve string com todos os carateres convertidos em minúsculas.
position position(string, search_string) Devolve o índice inicial de search_string em string se existir e 0 caso contrário.
replace replace(string, old_string, new_string) Devolve string com todas as ocorrências de old_string substituídas por new_string.
substring substring(string, start_position, length) Devolve a substring de string, começando em start_position, composta por length carateres. O start_position começa em 1, com 1 a indicar o primeiro caráter na string, 2 a indicar o segundo caráter na string e assim sucessivamente.
upper upper(string) Devolve string com todos os carateres convertidos em maiúsculas.

Funções apenas para cálculos da tabela

Função Sintaxe Finalidade
split split(string, delimeter) Devolve uma lista de strings em string divididas por delimiter.
to_number to_number(string) Devolve o número representado por string ou null se não for possível converter a string.
to_string to_string(value) Devolve a representação de string de value ou uma string vazia se value for nulo.

Funções de data

As funções de data permitem-lhe trabalhar com datas e horas.

Funções para qualquer expressão do Looker

Função Sintaxe Finalidade
add_days add_days(number, date) Adiciona number dias a date.
add_hours add_hours(number, date) Adiciona number horas a date.
add_minutes add_minutes(number, date) Adiciona number minutos a date.
add_months add_months(number, date) Adiciona number meses a date.
add_seconds add_seconds(number, date) Adiciona number segundos a date.
add_years add_years(number, date) Adiciona number anos a date.
date date(year, month, day) Devolve a data "year-month-day" ou null se a data for inválida.
date_time date_time(year, month, day, hours, minutes, seconds) Devolve a data year-month-day hours:minutes:seconds ou null se a data for inválida.
diff_days diff_days(start_date, end_date) Devolve o número de dias entre start_date e end_date.

Para ver um exemplo, consulte a publicação da comunidade Usar datas em cálculos de tabelas.
diff_hours diff_hours(start_date, end_date) Devolve o número de horas entre start_date e end_date.
diff_minutes diff_minutes(start_date, end_date) Devolve o número de minutos entre start_date e end_date.

Para ver um exemplo, consulte a publicação da comunidade Usar datas em cálculos de tabelas.
diff_months diff_months(start_date, end_date) Devolve o número de meses entre start_date e end_date.

Para ver um exemplo, consulte a publicação da comunidade Agrupar por uma dimensão em cálculos de tabelas.
diff_seconds diff_seconds(start_date, end_date) Devolve o número de segundos entre start_date e end_date.
diff_years diff_years(start_date, end_date) Devolve o número de anos entre start_date e end_date.
extract_days extract_days(date) Extrai os dias de date.

Para ver um exemplo, consulte a publicação da comunidade Usar datas em cálculos de tabelas.
extract_hours extract_hours(date) Extrai as horas de date.
extract_minutes extract_minutes(date) Extrai os minutos de date.
extract_months extract_months(date) Extrai os meses de date.
extract_seconds extract_seconds(date) Extrai os segundos de date.
extract_years extract_years(date) Extrai os anos de date.
now now() Devolve a data e a hora atuais.

Para ver exemplos que usam now, consulte a publicação da comunidade A função de cálculo de tabela Now() tem um melhor processamento do fuso horário e a publicação da comunidade Usar datas em cálculos de tabelas.
trunc_days trunc_days(date) Trunca date para dias.
trunc_hours trunc_hours(date) Trunca date para horas.
trunc_minutes trunc_minutes(date) Trunca date para minutos.
trunc_months trunc_months(date) Trunca date para meses.
trunc_years trunc_years(date) Trunca date para anos.

Funções apenas para cálculos da tabela

Função Sintaxe Finalidade
to_date to_date(string) Devolve a data e a hora correspondentes a string (AAAA, AAAA-MM, AAAA-MM-DD, AAAA-MM-DD hh, AAAA-MM-DD hh:mm ou AAAA-MM-DD hh:mm:ss).

Funções, operadores e constantes lógicas

As funções e os operadores lógicos são usados para avaliar se algo é verdadeiro ou falso. As expressões que usam estes elementos recebem um valor, avaliam-no em função de alguns critérios, devolvem Yes se os critérios forem cumpridos e No se não forem cumpridos. Existem também vários operadores lógicos para comparar valores e combinar expressões lógicas.

Funções para qualquer expressão do Looker

Função Sintaxe Finalidade
case case(when(yesno_arg, value_if_yes), when(yesno_arg, value_if_yes), ..., else_value) Adicionado a 21/10 Permite a lógica condicional com várias condições e resultados. Devolve value_if_yes para o primeiro caso when cujo valor yesno_arg seja yes. Devolve else_value se todos os casos de when forem no.
coalesce coalesce(value_1, value_2, ...) Devolve o primeiro valor não null em value_1, value_2, ..., value_n se for encontrado e null caso contrário.

Para ver exemplos que usam coalesce, consulte as seguintes publicações da comunidade: Criar um total acumulado nas linhas com cálculos de tabelas, Criar uma percentagem do total nas linhas com cálculos de tabelas e Usar pivot_index em cálculos de tabelas.
if if(yesno_expression, value_if_yes, value_if_no) Se yesno_expression for avaliado como Yes, devolve o valor value_if_yes. Caso contrário, devolve o valor value_if_no.

Para ver um exemplo, consulte a publicação da comunidade Agrupar por uma dimensão em cálculos de tabelas.
is_null is_null(value) Devolve Yes se value for null e No caso contrário.

Para ver um exemplo, consulte a página de documentação Criar expressões do Looker. Para outro exemplo que usa is_null com o operador NOT, consulte a página de documentação Usar cálculos de tabelas.

Operadores para qualquer expressão do Looker

Os seguintes operadores de comparação podem ser usados com qualquer tipo de dados:

Operador Sintaxe Finalidade
= value_1 = value_2 Devolve Yes se value_1 for igual a value_2 e No caso contrário.
!= value_1 != value_2 Devolve Yes se value_1 não for igual a value_2 e No caso contrário.

Pode usar os seguintes operadores de comparação com números, datas e strings:

Operador Sintaxe Finalidade
> value_1 > value_2 Devolve Yes se value_1 for superior a value_2 e No caso contrário.
< value_1 < value_2 Devolve Yes se value_1 for inferior a value_2 e No caso contrário.
>= value_1 >= value_2 Devolve Yes se value_1 for superior ou igual a value_2 e No caso contrário.
<= value_1 <= value_2 Devolve Yes se value_1 for inferior ou igual a value_2 e No caso contrário.

Também pode combinar expressões do Looker com estes operadores lógicos:

Operador Sintaxe Finalidade
AND value_1 AND value_2 Devolve Yes se value_1 e value_2 forem Yes e No caso contrário.
OR value_1 OR value_2 Devolve Yes se value_1 ou value_2 for Yes e No caso contrário.
NOT NOT value Devolve Yes se value for No e No caso contrário.

Estes operadores lógicos têm de estar em maiúsculas. Os operadores lógicos escritos em minúsculas não funcionam.

Constantes lógicas

Pode usar constantes lógicas em expressões do Looker. Estas constantes são sempre escritas em minúsculas e têm os seguintes significados:

Constante Significado
yes True
no Falso
null Nenhum valor

Tenha em atenção que as constantes yes e no são os símbolos especiais que significam verdadeiro ou falso nas expressões do Looker. Por outro lado, a utilização de aspas, como em "yes" e "no", cria strings literais com esses valores.

As expressões lógicas são avaliadas como verdadeiras ou falsas sem necessitar de uma função if. Por exemplo, isto:

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

é equivalente a isto:

${field} > 100

Também pode usar null para indicar que não existe valor. Por exemplo, pode querer determinar se um campo está vazio ou atribuir um valor vazio numa determinada situação. Esta fórmula não devolve nenhum valor se o campo for inferior a 1 ou devolve o valor do campo se for superior a 1:

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

Combinar operadores AND e OR

Os operadores AND são avaliados antes dos operadores OR, se não especificar a ordem com parênteses. Assim, a seguinte expressão sem parênteses adicionais:

if (
  ${order_items.days_to_process}>=4 OR
  ${order_items.shipping_time}>5 AND
  ${order_facts.is_first_purchase},
"review", "okay")

seria avaliado da seguinte forma:

if (
  ${order_items.days_to_process}>=4 OR
  (${order_items.shipping_time}>5 AND ${order_facts.is_first_purchase}),
"review", "okay")

Funções posicionais

Ao criar cálculos de tabelas, pode usar funções de transformação posicional para extrair informações sobre campos em diferentes linhas ou colunas dinâmicas. Também pode criar listas e obter o índice da linha atual ou da coluna dinâmica.

Totais de colunas e linhas apenas para cálculos de tabelas

Se a análise detalhada contiver totais, pode fazer referência aos valores totais das colunas e das linhas:

Função Sintaxe Finalidade
:total ${field:total} Devolve o total da coluna do campo.
:row_total ${field:row_total} Devolve o total da linha do campo.

Algumas destas funções usam as posições relativas das linhas, pelo que a alteração da ordem de ordenação das linhas afeta os resultados das funções.

Função Sintaxe Finalidade
index index(expression, n) Devolve o valor do elemento n da coluna criada por expression, a menos que expression defina uma coluna de listas, caso em que devolve o elemento n de cada lista.
list list(value_1, value_2, ...) Cria uma lista a partir dos valores fornecidos.

Para ver um exemplo, consulte a publicação da comunidade Usar listas em cálculos de tabelas.
lookup lookup(value, lookup_column, result_column) Devolve o valor em result_column que está na mesma linha que value está em lookup_column.
offset offset(column, row_offset) Devolve o valor da linha (n + row_offset) em column, onde n é o número da linha atual.

Para ver exemplos que usam offset, consulte a página de práticas recomendadas Calcular a percentagem do valor anterior e a alteração percentual com cálculos de tabelas.
offset_list offset_list(column, row_offset, num_values) Devolve uma lista dos valores num_values a partir da linha (n + row_offset) em column, onde n é o número da linha atual.

Para ver um exemplo, consulte a publicação da comunidade Calcular médias móveis.
row row() Devolve o número da linha atual.

Algumas destas funções usam as posições relativas das colunas dinâmicas, pelo que alterar a ordem de ordenação da dimensão dinâmica afeta os resultados dessas funções.

Função Sintaxe Finalidade
pivot_column pivot_column() Devolve o índice da coluna dinâmica atual.
pivot_index pivot_index(expression, pivot_index) Avalia expression no contexto da coluna de tabela dinâmica na posição pivot_index (1 para a primeira tabela dinâmica, 2 para a segunda tabela dinâmica, etc.). Devolve o valor nulo para resultados não dinâmicos.

Para ver exemplos que usam pivot_index, consulte as publicações da comunidade Usar pivot_index em cálculos de tabelas e Criar uma percentagem do total em linhas com cálculos de tabelas.
pivot_offset pivot_offset(pivot_expression, col_offset) Devolve o valor de pivot_expression na posição (n + col_offset), em que n é a posição da coluna dinâmica atual. Devolve o valor nulo para resultados não dinâmicos.

Para ver exemplos que usam pivot_offset, consulte a publicação da comunidade Criar um total acumulado nas linhas com cálculos de tabelas e a página de práticas recomendadas Calcular a percentagem do valor anterior e a alteração percentual com cálculos de tabelas.
pivot_offset_list pivot_offset_list(pivot_expression, col_offset, num_values) Devolve uma lista dos valores num_values em pivot_expression a partir da posição (n + col_offset), em que n é o índice da tabela dinâmica atual. Devolve null para resultados não dinamizados.
pivot_row pivot_row(expression) Devolve os valores dinâmicos de expression como uma lista. Devolve null para resultados não dinamizados.

Para ver exemplos com pivot_row, consulte as páginas de práticas recomendadas Agregação em linhas (totais de linhas) em cálculos de tabelas e Como calcular a percentagem do total.
pivot_where pivot_where(select_expression, expression) Devolve o valor de expression para a coluna dinâmica que satisfaz exclusivamente select_expression ou null se não existir uma coluna exclusiva.

As funções de tabela dinâmica específicas que usa determinam se o cálculo da tabela é apresentado junto a cada coluna com dados dinâmicos ou como uma única coluna no final da tabela.

Funções de filtro para filtros personalizados e campos personalizados

As funções de filtro permitem-lhe trabalhar com expressões de filtro para devolver valores com base em dados filtrados. As funções de filtro funcionam em filtros personalizados, filtros em medidas personalizadas e dimensões personalizadas, mas não são válidas em cálculos de tabelas.

Função Sintaxe Finalidade
matches_filter matches_filter(field, filter_expression) Devolve Yes se o valor do campo corresponder à expressão de filtro e No caso contrário.