Calcular novos campos de dados
Nesta página
Você pode combinar dados de um ou mais campos em sua coleção em um único campo calculado. Por exemplo, você pode:
Converta um campo em horas para segundos ou em graus Farenheit para Celsius
Multiplique um campo de preço por um campo de quantidade para criar um total
Combine vários itens de linha em uma array para calcular um total
Considerações
Você só pode criar campos calculados a partir de dados dentro do mesmo documento.
Você não pode converter o tipo de um campo calculado pela interface do Atlas Charts. No entanto, você pode utilizar Operadores de expressão de tipo em uma definição de campo calculada.
Após criar um campo calculado, você pode modificar sua definição, mas não seu nome. No entanto, você pode remover e recriar o campo se precisar renomeá-lo.
Criar um campo calculado
Você cria um campo calculado combinando os dados de campos existentes através de expressões simples ou operadores de expressãoMQL.
Observação
A definição de um campo calculado pode conter linguagem de expressão simples ou linguagem de expressão do operador. Você não pode usar linguagem de expressão simples e de operador na mesma definição.
Para criar um campo calculado:
No canto do painel Fields, clique em Add Field.
Selecione Calculated.
Insira o Field Name do campo calculado que você deseja definir. Você pode especificar um campo aninhado utilizando notação de ponto. Por exemplo,
metadata.target
.Insira o Value Expression utilizando o idioma expressão simples ou Operadores de Expressão.
Clique em Save Field.
O campo calculado aparece em itálico no painel Fields.
Expressões simples
Você pode usar a seguinte linguagem de expressão simples em um campo calculado.
Idioma de Expressão | Exemplo |
---|---|
Nomes dos campos | orderTotal 'orderTotal' "orderTotal" |
Números literais | 2 0.5 |
Operadores matemáticos | + - * / |
Colchetes |
|
O espaço em branco que está fora das strings citadas não está incluído na expressão.

Exemplo
Os exemplos seguintes são expressões simples válidas para definir um campo calculado.
Adicione o campo bathrooms
ao campo bedrooms
:
bathrooms + bedrooms
Multiplique o campo total amount
por 1.1:
'total amount' * 1.1
Subtraia 32
do campo sensor.temp
e multiplique por 5
e divida por 9
:
(sensor.temp - 32)*5/9
Expressões do operador
Você pode utilizar Operadores de Expressão para definir campos calculados mais complexos.
Exemplo
Os exemplos seguintes são expressões de operador válidas para definir um campo calculado.
Multiplique o campo price
por 0.075
:
{ $multiply: [ "$price", 0.075 ] }
Combine vários campos de itens de linha em uma matriz para calcular um total:
{ $reduce: { input: '$items', initialValue: 0, in: { $sum : ["$$value", { $multiply: ["$$this.price", "$$this.quantity"] } ] } } }
Dica
Você pode usar um campo calculado na definição de outro campo calculado.
Por exemplo, se você criar um campo calculado salesTax
com a seguinte definição:
{ $multiply: [ "$price", 0.075 ] }
Em seguida, você pode criar um campo calculado totalCost
que usa o campo salesTax
em sua definição:
{ $sum: ["$price", "$salesTax"] }
Strings literais
Você pode definir um valor de campo calculado para uma string usando o operador $literal
.
Exemplo
A seguinte definição de campo atribui um valor de my string
:
{ $literal: "my string" }
Editar um campo calculado
Você pode modificar a definição de um campo calculado.
No painel Fields, clique no Ellipsis (...) ao lado do nome do campo calculado que você deseja modificar.
Selecione Modify field.
Atualize o Value Expression.
Clique em Save Field.
Se você estiver usando o campo calculado em um gráfico, o gráfico atualizará para refletir a nova definição de campo calculado.

Remover um campo calculado
Quando você remove um campo calculado, o Atlas Charts faz uma nova amostra da fonte de dados, atualiza o painel do Fields e atualiza seu gráfico. Se o campo calculado tiver sido usado em codificações ou filtros, ele permanecerá no gráfico mesmo depois que o campo for removido do painel Fields.
Para remover um campo calculado:
No painel Fields, clique no Ellipsis (...) ao lado do nome do campo calculado que você deseja remover.
Selecione Remove field.
