> ## Documentation Index
> Fetch the complete documentation index at: https://ajuda.medemerge.com.br/llms.txt
> Use this file to discover all available pages before exploring further.

# Lista de funções

> Todas as funções das expressões do construtor visual, com sintaxe, argumentos e exemplo.

Estas são as funções que você pode usar nas expressões do construtor visual: em colunas personalizadas, em filtros por expressão e nas métricas de **Resumir**. Para o básico (onde as expressões entram, como citar colunas, operadores), veja [Expressões](/expressoes/visao-geral).

No editor, a mesma ajuda aparece enquanto você digita: comece a escrever o nome da função, ou clique no botão **ƒ** ao lado do campo.

<Note>
  As colunas dos exemplos, como `[minutos_espera]` e `[chegada]`, são fictícias. Troque pelas colunas do seu indicador.
</Note>

## Agregação

Resumem várias linhas num número. Só cabem numa métrica de **Resumir**, e podem ser combinadas numa conta, como `CountIf([minutos_espera] > 30) / Count()`.

### Average

A média dos valores de `coluna`. Linhas vazias ficam de fora.

Sintaxe: `Average(coluna)`

* `coluna`: A coluna ou conta numérica.

Exemplo: `Average([minutos_espera])`

Relacionadas: [Median](#median), [Sum](#sum).

### Count

O número de linhas. Pode ser escrito com ou sem parênteses: `Count` ou `Count()`.

Sintaxe: `Count()`

Exemplo: `Count()`

Relacionadas: [CountIf](#countif), [Distinct](#distinct), [CumulativeCount](#cumulativecount).

### CountIf

O número de linhas em que `condição` é verdadeira.

Sintaxe: `CountIf(condição)`

* `condição`: Uma comparação ou função que dá verdadeiro ou falso, como `[setor] = "PS"`.

Exemplo: `CountIf([minutos_espera] > 30)`

Relacionadas: [Count](#count), [SumIf](#sumif), [Share](#share), [DistinctIf](#distinctif).

Mais exemplos em [CountIf em detalhe](/expressoes/funcoes/countif).

### Distinct

Quantos valores diferentes `coluna` tem. Linhas vazias ficam de fora.

Sintaxe: `Distinct(coluna)`

* `coluna`: A coluna ou conta.

Exemplo: `Distinct([convenio])`

Relacionadas: [DistinctIf](#distinctif), [Count](#count).

### DistinctIf

Quantos valores diferentes `coluna` tem nas linhas em que `condição` é verdadeira.

Sintaxe: `DistinctIf(coluna, condição)`

* `coluna`: A coluna ou conta.
* `condição`: Uma comparação ou função que dá verdadeiro ou falso.

Exemplo: `DistinctIf([convenio], [minutos_espera] > 30)`

Relacionadas: [Distinct](#distinct), [CountIf](#countif).

### Max

O maior valor de `coluna`. Serve para número, data e texto.

Sintaxe: `Max(coluna)`

* `coluna`: A coluna ou conta.

Exemplo: `Max([chegada])`

Relacionadas: [Min](#min).

### Median

A mediana de `coluna`: metade das linhas fica abaixo, metade acima. Em bases muito grandes, o valor pode ser aproximado.

Sintaxe: `Median(coluna)`

* `coluna`: A coluna ou conta numérica.

Exemplo: `Median([minutos_espera])`

Relacionadas: [Percentile](#percentile), [Average](#average).

### Min

O menor valor de `coluna`. Serve para número, data e texto.

Sintaxe: `Min(coluna)`

* `coluna`: A coluna ou conta.

Exemplo: `Min([minutos_espera])`

Relacionadas: [Max](#max).

### Percentile

O valor abaixo do qual fica a fração `percentil` das linhas. `0.9` é o percentil 90. Em bases muito grandes, o valor pode ser aproximado.

Sintaxe: `Percentile(coluna, percentil)`

* `coluna`: A coluna ou conta numérica.
* `percentil`: Um número escrito, de 0 a 1.

Exemplo: `Percentile([minutos_espera], 0.9)`

Relacionadas: [Median](#median).

### Share

A fração das linhas, de 0 a 1, em que `condição` é verdadeira. É o mesmo que `CountIf(condição) / Count()`.

Sintaxe: `Share(condição)`

* `condição`: Uma comparação ou função que dá verdadeiro ou falso.

Exemplo: `Share([convenio] = "SUS")`

Relacionadas: [CountIf](#countif), [Count](#count).

### StandardDeviation

O desvio padrão de `coluna`, calculado sobre todas as linhas (populacional).

Sintaxe: `StandardDeviation(coluna)`

* `coluna`: A coluna ou conta numérica.

Exemplo: `StandardDeviation([minutos_espera])`

Relacionadas: [Variance](#variance), [Average](#average).

### Sum

A soma dos valores de `coluna`. Linhas vazias ficam de fora.

Sintaxe: `Sum(coluna)`

* `coluna`: A coluna ou conta numérica.

Exemplo: `Sum([minutos_espera])`

Relacionadas: [SumIf](#sumif), [CumulativeSum](#cumulativesum), [Average](#average).

### SumIf

A soma de `coluna` nas linhas em que `condição` é verdadeira.

Sintaxe: `SumIf(coluna, condição)`

* `coluna`: A coluna ou conta numérica.
* `condição`: Uma comparação ou função que dá verdadeiro ou falso.

Exemplo: `SumIf([minutos_espera], [convenio] = "SUS")`

Relacionadas: [Sum](#sum), [CountIf](#countif).

### Variance

A variância de `coluna`, calculada sobre todas as linhas (populacional).

Sintaxe: `Variance(coluna)`

* `coluna`: A coluna ou conta numérica.

Exemplo: `Variance([minutos_espera])`

Relacionadas: [StandardDeviation](#standarddeviation).

## Janela

Olham para outras linhas do resultado: a anterior, as acumuladas, o mesmo período do ano anterior. Também só cabem em **Resumir**.

### CumulativeCount

A contagem de linhas acumulada ao longo do agrupamento: cada grupo soma os anteriores.

Sintaxe: `CumulativeCount()`

Exemplo: `CumulativeCount()`

Relacionadas: [Count](#count), [CumulativeSum](#cumulativesum).

### CumulativeSum

A soma de `coluna` acumulada ao longo do agrupamento: cada grupo soma os anteriores.

Sintaxe: `CumulativeSum(coluna)`

* `coluna`: A coluna ou conta numérica.

Exemplo: `CumulativeSum([minutos_espera])`

Relacionadas: [Sum](#sum), [CumulativeCount](#cumulativecount).

### Offset

O valor de `medida` numa linha anterior ou seguinte do resultado agrupado: `-1` é a linha de cima. Precisa de um agrupamento. Para comparar com o ano anterior, use `SamePeriodLastYear`.

Sintaxe: `Offset(medida, deslocamento)`

* `medida`: Uma agregação, como `Sum([valor])`.
* `deslocamento`: Um inteiro escrito, diferente de zero: negativo olha para trás.

Exemplo: `Sum([minutos_espera]) - Offset(Sum([minutos_espera]), -1)`

Relacionadas: [SamePeriodLastYear](#sameperiodlastyear), [CumulativeSum](#cumulativesum).

Mais exemplos em [Offset em detalhe](/expressoes/funcoes/offset).

### SamePeriodLastYear

O valor de `medida` no mesmo período do ano anterior. O filtro de data do painel recua um ano junto, dia a dia.

Sintaxe: `SamePeriodLastYear(medida, data)`

* `medida`: Uma agregação, como `Count()` ou `CountIf([convenio] = "SUS")`.
* `data`: A coluna de data que define o período, como `[chegada]`.

Exemplo: `SamePeriodLastYear(Count(), [chegada])`

Relacionadas: [Offset](#offset), [CountIf](#countif).

Mais exemplos em [SamePeriodLastYear em detalhe](/expressoes/funcoes/sameperiodlastyear).

## Condicionais

Escolhem um valor conforme uma condição, ou dão verdadeiro ou falso — o que um filtro por expressão precisa.

### between

Verdadeiro quando `valor` está entre `início` e `fim`, com as duas pontas incluídas.

Sintaxe: `between(valor, início, fim)`

* `valor`: Uma coluna, um valor escrito ou uma conta.
* `início`: O menor valor aceito.
* `fim`: O maior valor aceito.

Exemplo: `between([minutos_espera], 5, 30)`

Relacionadas: [in](#in), [interval](#interval).

### case

Testa as condições em ordem e devolve o `resultado` da primeira verdadeira. Se nenhuma for, devolve `padrão`, ou vazio quando ele não é escrito.

Sintaxe: `case(condição, resultado, …, padrão)`

* `condição`: Uma comparação ou função que dá verdadeiro ou falso.
* `resultado`: O que devolver quando a condição é verdadeira.
* `padrão`: Opcional. O que devolver quando nenhuma condição é verdadeira.

Exemplo: `case([minutos_espera] > 30, "longa", [minutos_espera] > 10, "média", "curta")`

Relacionadas: [if](#if), [coalesce](#coalesce), [CountIf](#countif).

Mais exemplos em [case em detalhe](/expressoes/funcoes/case).

### if

O mesmo que `case`: devolve o `resultado` da primeira condição verdadeira.

Sintaxe: `if(condição, resultado, …, padrão)`

* `condição`: Uma comparação ou função que dá verdadeiro ou falso.
* `resultado`: O que devolver quando a condição é verdadeira.
* `padrão`: Opcional. O que devolver quando nenhuma condição é verdadeira.

Exemplo: `if([minutos_espera] > 30, "longa", "curta")`

Relacionadas: [case](#case).

### coalesce

O primeiro valor que não está vazio, na ordem escrita.

Sintaxe: `coalesce(valor, …)`

* `valor`: Uma coluna, um valor escrito ou uma conta.

Exemplo: `coalesce([convenio], "sem convênio")`

Relacionadas: [isNull](#isnull), [case](#case).

### in

Verdadeiro quando `valor` é igual a uma das opções.

Sintaxe: `in(valor, opção, …)`

* `valor`: Uma coluna, um valor escrito ou uma conta.
* `opção`: Um valor aceito.

Exemplo: `in([setor], "PS", "UTI")`

Relacionadas: [notIn](#notin), [between](#between).

### isNull

Verdadeiro quando `valor` está vazio (nulo). Um texto em branco `""` não conta como nulo: para ele, use `isEmpty`.

Sintaxe: `isNull(valor)`

* `valor`: Uma coluna, um valor escrito ou uma conta.

Exemplo: `isNull([convenio])`

Relacionadas: [notNull](#notnull), [isEmpty](#isempty), [coalesce](#coalesce).

### notNull

Verdadeiro quando `valor` não está vazio (nulo).

Sintaxe: `notNull(valor)`

* `valor`: Uma coluna, um valor escrito ou uma conta.

Exemplo: `notNull([convenio])`

Relacionadas: [isNull](#isnull), [notEmpty](#notempty).

### notIn

Verdadeiro quando `valor` é diferente de todas as opções.

Sintaxe: `notIn(valor, opção, …)`

* `valor`: Uma coluna, um valor escrito ou uma conta.
* `opção`: Um valor recusado.

Exemplo: `notIn([setor], "PS")`

Relacionadas: [in](#in).

## Matemática

Contas sobre números.

### abs

O valor absoluto de `número`: sem o sinal de menos.

Sintaxe: `abs(número)`

* `número`: Uma coluna, número ou conta.

Exemplo: `abs([minutos_espera] - 20)`

### ceil

Arredonda `número` para cima, até o inteiro seguinte.

Sintaxe: `ceil(número)`

* `número`: Uma coluna, número ou conta.

Exemplo: `ceil([minutos_espera] / 60)`

Relacionadas: [floor](#floor), [round](#round).

### exp

O número de Euler (e ≈ 2,718) elevado a `número`.

Sintaxe: `exp(número)`

* `número`: Uma coluna, número ou conta.

Exemplo: `exp([minutos_espera] / 100)`

Relacionadas: [log](#log), [power](#power).

### floor

Arredonda `número` para baixo, até o inteiro anterior.

Sintaxe: `floor(número)`

* `número`: Uma coluna, número ou conta.

Exemplo: `floor([minutos_espera] / 60)`

Relacionadas: [ceil](#ceil), [round](#round).

### log

O logaritmo de `número` na base 10.

Sintaxe: `log(número)`

* `número`: Uma coluna, número ou conta, maior que zero.

Exemplo: `log([minutos_espera] + 1)`

Relacionadas: [exp](#exp).

### power

`número` elevado a `expoente`.

Sintaxe: `power(número, expoente)`

* `número`: Uma coluna, número ou conta.
* `expoente`: Uma coluna, número ou conta.

Exemplo: `power([minutos_espera], 2)`

Relacionadas: [sqrt](#sqrt), [exp](#exp).

### round

Arredonda `número` para o inteiro mais próximo.

Sintaxe: `round(número)`

* `número`: Uma coluna, número ou conta.

Exemplo: `round([minutos_espera] / 60)`

Relacionadas: [ceil](#ceil), [floor](#floor).

### sqrt

A raiz quadrada de `número`.

Sintaxe: `sqrt(número)`

* `número`: Uma coluna, número ou conta.

Exemplo: `sqrt([minutos_espera])`

Relacionadas: [power](#power).

## Texto

Buscam, recortam e transformam textos.

### concat

Junta os valores num texto só. Números e datas viram texto.

Sintaxe: `concat(valor, …)`

* `valor`: Uma coluna, um valor escrito ou uma conta.

Exemplo: `concat([setor], " - ", [convenio])`

Relacionadas: [text](#text), [replace](#replace).

### contains

Verdadeiro quando `texto` contém `trecho`. Diferencia maiúsculas de minúsculas, a menos que o terceiro argumento seja `"case-insensitive"`.

Sintaxe: `contains(texto, trecho, modo)`

* `texto`: A coluna ou conta de texto.
* `trecho`: O que procurar.
* `modo`: Opcional. `"case-insensitive"` ignora maiúsculas e minúsculas.

Exemplo: `contains([convenio], "unimed", "case-insensitive")`

Relacionadas: [doesNotContain](#doesnotcontain), [startsWith](#startswith), [regexExtract](#regexextract).

### doesNotContain

Verdadeiro quando `texto` não contém `trecho`. Aceita `"case-insensitive"` como `contains`.

Sintaxe: `doesNotContain(texto, trecho, modo)`

* `texto`: A coluna ou conta de texto.
* `trecho`: O que procurar.
* `modo`: Opcional. `"case-insensitive"` ignora maiúsculas e minúsculas.

Exemplo: `doesNotContain([convenio], "particular", "case-insensitive")`

Relacionadas: [contains](#contains).

### endsWith

Verdadeiro quando `texto` termina com `trecho`. Aceita `"case-insensitive"` como `contains`.

Sintaxe: `endsWith(texto, trecho, modo)`

* `texto`: A coluna ou conta de texto.
* `trecho`: O final procurado.
* `modo`: Opcional. `"case-insensitive"` ignora maiúsculas e minúsculas.

Exemplo: `endsWith([setor], "S")`

Relacionadas: [startsWith](#startswith), [contains](#contains).

### isEmpty

Verdadeiro quando `valor` está vazio: nulo ou texto em branco `""`.

Sintaxe: `isEmpty(valor)`

* `valor`: A coluna ou conta.

Exemplo: `isEmpty([convenio])`

Relacionadas: [notEmpty](#notempty), [isNull](#isnull).

### length

O número de caracteres de `texto`.

Sintaxe: `length(texto)`

* `texto`: A coluna ou conta de texto.

Exemplo: `length([setor])`

### lower

`texto` em letras minúsculas.

Sintaxe: `lower(texto)`

* `texto`: A coluna ou conta de texto.

Exemplo: `lower([setor])`

Relacionadas: [upper](#upper).

### lTrim

`texto` sem os espaços do começo.

Sintaxe: `lTrim(texto)`

* `texto`: A coluna ou conta de texto.

Exemplo: `lTrim([setor])`

Relacionadas: [trim](#trim), [rTrim](#rtrim).

### notEmpty

Verdadeiro quando `valor` tem conteúdo: nem nulo nem texto em branco `""`. Serve também para coluna numérica ou de data.

Sintaxe: `notEmpty(valor)`

* `valor`: A coluna ou conta.

Exemplo: `notEmpty([convenio])`

Relacionadas: [isEmpty](#isempty), [notNull](#notnull), [CountIf](#countif).

### path

O caminho de um endereço web: o que vem depois do domínio, sem `?` e `#`.

Sintaxe: `path(url)`

* `url`: A coluna com o endereço.

Exemplo: `path([url])`

Relacionadas: [regexExtract](#regexextract), [splitPart](#splitpart).

### regexExtract

O trecho de `texto` que casa com `expressão regular`. Se ela tiver um grupo entre parênteses, só o grupo.

Sintaxe: `regexExtract(texto, expressão regular)`

* `texto`: A coluna ou conta de texto.
* `expressão regular`: O padrão, entre aspas.

Exemplo: `regexExtract([url], "https?://([^/]+)")`

Relacionadas: [contains](#contains), [splitPart](#splitpart), [substring](#substring).

### replace

`texto` com toda ocorrência de `trecho` trocada por `substituto`.

Sintaxe: `replace(texto, trecho, substituto)`

* `texto`: A coluna ou conta de texto.
* `trecho`: O que trocar.
* `substituto`: O que pôr no lugar.

Exemplo: `replace([setor], "PS", "Pronto-socorro")`

Relacionadas: [concat](#concat), [regexExtract](#regexextract).

### rTrim

`texto` sem os espaços do fim.

Sintaxe: `rTrim(texto)`

* `texto`: A coluna ou conta de texto.

Exemplo: `rTrim([setor])`

Relacionadas: [trim](#trim), [lTrim](#ltrim).

### splitPart

Divide `texto` em `separador` e devolve a parte da `posição`, contando a partir de 1.

Sintaxe: `splitPart(texto, separador, posição)`

* `texto`: A coluna ou conta de texto.
* `separador`: O texto que separa as partes.
* `posição`: Qual parte devolver: 1 é a primeira.

Exemplo: `splitPart([url], "/", 3)`

Relacionadas: [substring](#substring), [regexExtract](#regexextract).

### startsWith

Verdadeiro quando `texto` começa com `trecho`. Aceita `"case-insensitive"` como `contains`.

Sintaxe: `startsWith(texto, trecho, modo)`

* `texto`: A coluna ou conta de texto.
* `trecho`: O começo procurado.
* `modo`: Opcional. `"case-insensitive"` ignora maiúsculas e minúsculas.

Exemplo: `startsWith([setor], "p", "case-insensitive")`

Relacionadas: [endsWith](#endswith), [contains](#contains).

### substring

Um pedaço de `texto`: `tamanho` caracteres a partir de `início`, contando de 1.

Sintaxe: `substring(texto, início, tamanho)`

* `texto`: A coluna ou conta de texto.
* `início`: A posição do primeiro caractere: 1 é o começo.
* `tamanho`: Quantos caracteres devolver.

Exemplo: `substring([setor], 1, 2)`

Relacionadas: [splitPart](#splitpart), [length](#length).

### trim

`texto` sem os espaços do começo e do fim.

Sintaxe: `trim(texto)`

* `texto`: A coluna ou conta de texto.

Exemplo: `trim([setor])`

Relacionadas: [lTrim](#ltrim), [rTrim](#rtrim).

### upper

`texto` em letras maiúsculas.

Sintaxe: `upper(texto)`

* `texto`: A coluna ou conta de texto.

Exemplo: `upper([setor])`

Relacionadas: [lower](#lower).

## Data

Extraem partes de datas, fazem contas com datas e comparam períodos. A hora é sempre a do hospital.

### convertTimezone

A data e hora de `data` no fuso `destino`. Use `origem` quando a coluna não guarda o fuso.

Sintaxe: `convertTimezone(data, destino, origem)`

* `data`: A coluna ou conta de data e hora.
* `destino`: O fuso, entre aspas, como `"America/Manaus"`.
* `origem`: Opcional. O fuso em que o valor foi gravado.

Exemplo: `convertTimezone([chegada], "America/Manaus")`

### datetimeAdd

`data` somada de `quantidade` unidades de tempo.

Sintaxe: `datetimeAdd(data, quantidade, unidade)`

* `data`: A coluna ou conta de data.
* `quantidade`: Quantas unidades somar.
* `unidade`: A unidade, escrita entre aspas: `"year"`, `"quarter"`, `"month"`, `"week"`, `"day"`, `"hour"`, `"minute"` ou `"second"`.

Exemplo: `datetimeAdd([chegada], 1, "month")`

Relacionadas: [datetimeSubtract](#datetimesubtract), [timeSpan](#timespan).

### datetimeDiff

Quanto tempo vai de `início` a `fim` (`fim` menos `início`), em unidades inteiras de `unidade`.

Sintaxe: `datetimeDiff(início, fim, unidade)`

* `início`: A data de partida.
* `fim`: A data de chegada.
* `unidade`: A unidade, escrita entre aspas: `"year"`, `"quarter"`, `"month"`, `"week"`, `"day"`, `"hour"`, `"minute"` ou `"second"`.

Exemplo: `datetimeDiff([chegada], now(), "hour")`

Relacionadas: [datetimeAdd](#datetimeadd), [interval](#interval).

Mais exemplos em [datetimeDiff em detalhe](/expressoes/funcoes/datetimediff).

### datetimeSubtract

`data` menos `quantidade` unidades de tempo.

Sintaxe: `datetimeSubtract(data, quantidade, unidade)`

* `data`: A coluna ou conta de data.
* `quantidade`: Quantas unidades tirar.
* `unidade`: A unidade, escrita entre aspas: `"year"`, `"quarter"`, `"month"`, `"week"`, `"day"`, `"hour"`, `"minute"` ou `"second"`.

Exemplo: `datetimeSubtract([data_alta], 2, "day")`

Relacionadas: [datetimeAdd](#datetimeadd).

### day

O dia do mês de `data`, de 1 a 31, na hora do hospital.

Sintaxe: `day(data)`

* `data`: A coluna ou conta de data.

Exemplo: `day([chegada])`

Relacionadas: [weekday](#weekday), [month](#month).

### dayName

O nome do dia da semana de um número de 1 a 7: `1` é `"domingo"`.

Sintaxe: `dayName(número)`

* `número`: O dia da semana, como o que `weekday` devolve.

Exemplo: `dayName(weekday([chegada]))`

Relacionadas: [weekday](#weekday), [monthName](#monthname).

### hour

A hora de `data`, de 0 a 23, na hora do hospital.

Sintaxe: `hour(data)`

* `data`: A coluna ou conta de data e hora.

Exemplo: `hour([chegada])`

Relacionadas: [minute](#minute), [day](#day).

### interval

Verdadeiro quando `coluna` cai nos últimos (ou próximos) `quantidade` períodos, como o filtro relativo do painel. `-30, "day"` são os últimos 30 dias.

Sintaxe: `interval(coluna, quantidade, unidade)`

* `coluna`: A coluna de data (não uma conta).
* `quantidade`: Um inteiro escrito: negativo olha para trás.
* `unidade`: De `"minute"` a `"year"`, entre aspas.

Exemplo: `interval([chegada], -30, "day")`

Relacionadas: [relativeDateTime](#relativedatetime), [between](#between).

### minute

O minuto de `data`, de 0 a 59.

Sintaxe: `minute(data)`

* `data`: A coluna ou conta de data e hora.

Exemplo: `minute([chegada])`

Relacionadas: [hour](#hour), [second](#second).

### month

O mês de `data`, de 1 a 12.

Sintaxe: `month(data)`

* `data`: A coluna ou conta de data.

Exemplo: `month([data_alta])`

Relacionadas: [monthName](#monthname), [quarter](#quarter), [year](#year).

### monthName

O nome abreviado do mês de um número de 1 a 12: `1` é `"jan"`.

Sintaxe: `monthName(número)`

* `número`: O mês, como o que `month` devolve.

Exemplo: `monthName(month([chegada]))`

Relacionadas: [month](#month), [dayName](#dayname).

### now

A data e hora de agora.

Sintaxe: `now()`

Exemplo: `now()`

Relacionadas: [today](#today), [relativeDateTime](#relativedatetime).

### quarter

O trimestre de `data`, de 1 a 4.

Sintaxe: `quarter(data)`

* `data`: A coluna ou conta de data.

Exemplo: `quarter([chegada])`

Relacionadas: [quarterName](#quartername), [month](#month).

### quarterName

O nome do trimestre de um número de 1 a 4: `1` é `"T1"`.

Sintaxe: `quarterName(número)`

* `número`: O trimestre, como o que `quarter` devolve.

Exemplo: `quarterName(quarter([chegada]))`

Relacionadas: [quarter](#quarter).

### relativeDateTime

A data e hora de agora somada de `quantidade` unidades. `-7, "day"` é uma semana atrás.

Sintaxe: `relativeDateTime(quantidade, unidade)`

* `quantidade`: Um número escrito: negativo olha para trás.
* `unidade`: A unidade, escrita entre aspas: `"year"`, `"quarter"`, `"month"`, `"week"`, `"day"`, `"hour"`, `"minute"` ou `"second"`.

Exemplo: `[chegada] > relativeDateTime(-7, "day")`

Relacionadas: [interval](#interval), [now](#now).

### second

O segundo de `data`, de 0 a 59.

Sintaxe: `second(data)`

* `data`: A coluna ou conta de data e hora.

Exemplo: `second([chegada])`

Relacionadas: [minute](#minute).

### timeSpan

Uma duração de `quantidade` unidades, para somar ou tirar de uma data com `+` e `-`.

Sintaxe: `timeSpan(quantidade, unidade)`

* `quantidade`: Uma coluna, número ou conta.
* `unidade`: A unidade, escrita entre aspas: `"year"`, `"quarter"`, `"month"`, `"week"`, `"day"`, `"hour"`, `"minute"` ou `"second"`.

Exemplo: `[chegada] + timeSpan(3, "day")`

Relacionadas: [datetimeAdd](#datetimeadd).

### today

A data de hoje, na hora do hospital.

Sintaxe: `today()`

Exemplo: `today()`

Relacionadas: [now](#now).

### week

A semana do ano de `data`. O modo `"iso"` (o padrão) segue a norma ISO; `"us"` e `"instance"` começam a semana no domingo, com a semana 1 em 1º de janeiro.

Sintaxe: `week(data, modo)`

* `data`: A coluna ou conta de data.
* `modo`: Opcional. `"iso"`, `"us"` ou `"instance"`.

Exemplo: `week([chegada], "us")`

Relacionadas: [weekday](#weekday), [month](#month).

### weekday

O dia da semana de `data`, de 1 a 7: `1` é domingo, `7` é sábado.

Sintaxe: `weekday(data)`

* `data`: A coluna ou conta de data.

Exemplo: `weekday([chegada])`

Relacionadas: [dayName](#dayname), [week](#week).

### year

O ano de `data`.

Sintaxe: `year(data)`

* `data`: A coluna ou conta de data.

Exemplo: `year([chegada])`

Relacionadas: [month](#month), [quarter](#quarter).

## Conversão

Convertem um valor de um tipo para outro.

### date

Converte `valor` em data, sem a hora. Texto precisa estar no formato `"AAAA-MM-DD"`.

Sintaxe: `date(valor)`

* `valor`: Uma data com hora, ou um texto.

Exemplo: `date([chegada])`

Relacionadas: [datetime](#datetime), [text](#text).

### datetime

Converte `valor` em data e hora. O modo diz como ler: `"iso"` (o padrão) e `"simple"` leem texto; `"unixSeconds"` e `"unixMilliseconds"` leem um número de segundos ou milissegundos desde 1970.

Sintaxe: `datetime(valor, modo)`

* `valor`: Um texto ou um número.
* `modo`: Opcional. `"iso"`, `"simple"`, `"unixSeconds"` ou `"unixMilliseconds"`.

Exemplo: `datetime("2026-09-01T10:00:00Z")`

Relacionadas: [date](#date).

### float

Converte `valor` em número com casas decimais.

Sintaxe: `float(valor)`

* `valor`: Um número ou um texto com um número.

Exemplo: `float([minutos_espera])`

Relacionadas: [integer](#integer), [text](#text).

### integer

Converte `valor` em número inteiro.

Sintaxe: `integer(valor)`

* `valor`: Um número ou um texto com um número.

Exemplo: `integer([minutos_espera] / 3)`

Relacionadas: [float](#float), [round](#round).

### text

Converte `valor` em texto.

Sintaxe: `text(valor)`

* `valor`: Uma coluna, um valor escrito ou uma conta.

Exemplo: `text([minutos_espera])`

Relacionadas: [concat](#concat), [integer](#integer).

## Limites

* **Agregação e janela só em Resumir.** Coluna personalizada e filtro trabalham linha a linha, então `Sum`, `CountIf` ou `Offset` não cabem neles.
* **`Offset` precisa de um agrupamento**, para saber qual é a linha anterior. `CumulativeSum` e `CumulativeCount` também só fazem sentido com um.
* **`SamePeriodLastYear` usa uma coluna de data por indicador**, e só sobre uma tabela. Num indicador feito sobre o resultado de outro, ele não está disponível.
* **Textos diferenciam maiúsculas de minúsculas.** `[setor] = "ps"` não encontra `"PS"`. Para ignorar a diferença, use `lower` dos dois lados, ou o modo `"case-insensitive"` de `contains`, `startsWith` e `endsWith`.
* **Nomes de dia, mês e trimestre saem em português:** `dayName` devolve `"domingo"`, `monthName` devolve `"jan"`, `quarterName` devolve `"T1"`.
* **`Median` e `Percentile` podem ser aproximados** em bases muito grandes.
* **`StandardDeviation` e `Variance` são populacionais**: calculados sobre todas as linhas, e não sobre uma amostra.

### Funções não disponíveis

`host`, `domain`, `subdomain` extraem o domínio de um endereço web. Elas dependem da lista de sufixos públicos (`.com.br` é um sufixo só), e sem ela o resultado pareceria certo e estaria errado. O editor recusa as três com essa explicação. Para recortar um endereço, use `path`, `splitPart` ou `regexExtract`.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.