$log - Amazon DocumentDB
Services or capabilities described in Amazon Web Services documentation might vary by Region. To see the differences applicable to the China Regions, see Getting Started with Amazon Web Services in China (PDF).

$log

New from version 4.0.

The $log operator in Amazon DocumentDB calculates the natural logarithm of a number. It returns the base-e logarithm of the specified number.

Parameters

  • expression: The number for which the natural logarithm will be calculated.

  • base: Base value to calculate log.

Example (MongoDB Shell)

The following example demonstrates the usage of the $log operator to calculate the natural logarithm of a number.

Create sample documents

db.numbers.insertMany([ { _id: 1, value: 10 }, { _id: 2, value: 100 }, { _id: 3, value: 1000 } ]);

Query example

db.numbers.aggregate([ { $project: { _id: 1, naturalLog: { $log: ["$value", 10] } }} ]);

Output

[ { "_id" : 1, "naturalLog" : 1 }, { "_id" : 2, "naturalLog" : 2 }, { "_id" : 3, "naturalLog" : 2.9999999999999996 } ]

Code examples

To view a code example for using the $log command, choose the tab for the language that you want to use:

Node.js
const { MongoClient } = require('mongodb'); async function example() { const client = await MongoClient.connect('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false'); const db = client.db('test'); const collection = db.collection('numbers'); const result = await collection.aggregate([ { $project: { _id: 1, naturalLog: { $log: ["$value", 10] } }} ]).toArray(); console.log(result); client.close(); } example();
Python
from pymongo import MongoClient def example(): client = MongoClient('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false') db = client.test collection = db.numbers result = list(collection.aggregate([ { "$project": { "_id": 1, "naturalLog": { "$log": ["$value", 10] } }} ])) print(result) client.close() example()