Menu Docs
Página inicial do Docs
/
Manual do MongoDB
/ / /

$log (agregação)

Nesta página

  • Definição
  • Comportamento
  • Exemplo
$log

Calcula o registro de um número na base especificada e retorna o resultado como um valor duplo.

$log tem a seguinte sintaxe:

{ $log: [ <number>, <base> ] }

A expressão <number> pode ser qualquerexpressão válida, desde que resolva para um número não negativo.

A expressão <base> pode ser qualquer expressão válida, desde que resolva para um número positivo maior que 1.

Para mais informações sobre expressões, consulte Expressões.

Se qualquer um dos argumentos for resolvido para um valor de null ou se referir a um campo ausente, $log retornará null. Se qualquer um dos argumentos se resolver em NaN, $log retornará NaN.

Exemplo
Resultados
{ $log: [ 100, 10 ] }
2
{ $log: [ 100, Math.E ] } onde Math.E é uma representação JavaScript para e.
4.605170185988092

Uma coleção integers contém os seguintes documentos:

db.integers.insertMany( [
{ _id: 1, int: 5 },
{ _id: 2, int: 2 },
{ _id: 3, int: 23 },
{ _id: 4, int: 10 }
] )

O exemplo a seguir usa o registro 2 em seu cálculo para determinar o número de bits necessários para representar o valor de int.

db.integers.aggregate([
{ $project: { bitsNeeded:
{
$floor: { $add: [ 1, { $log: [ "$int", 2 ] } ] } } }
}
])

A operação retorna os seguintes resultados:

{ "_id" : 1, "bitsNeeded" : 3 }
{ "_id" : 2, "bitsNeeded" : 2 }
{ "_id" : 3, "bitsNeeded" : 5 }
{ "_id" : 4, "bitsNeeded" : 4 }

Dica

Veja também:

  • $log10

  • $ln

Voltar

$locf