Menu Docs

Calcular novos campos de dados

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

  • 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.

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:

  1. No canto do painel Fields, clique em Add Field.

  2. Selecione Calculated.

  3. 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.

  4. Insira o Value Expression utilizando o idioma expressão simples ou Operadores de Expressão.

  5. Clique em Save Field.

O campo calculado aparece em itálico no painel Fields.

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.

Click "Add Field", enter a field name and simple expressions definition, then click "Save Field".
clique para ampliar

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

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"] }

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" }

Você pode modificar a definição de um campo calculado.

  1. No painel Fields, clique no Ellipsis (...) ao lado do nome do campo calculado que você deseja modificar.

  2. Selecione Modify field.

  3. Atualize o Value Expression.

  4. 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.

Click the ellipsis next to the field name, then click "Modify field".
clique para ampliar

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:

  1. No painel Fields, clique no Ellipsis (...) ao lado do nome do campo calculado que você deseja remover.

  2. Selecione Remove field.

Click the ellipsis next to the field name, then click "Remove field".
clique para ampliar