$ en décimal - Amazon DocumentDB

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

$ en décimal

Nouveau depuis la version 4.0

L'$toDecimalopérateur dans Amazon DocumentDB est utilisé pour convertir une valeur au type de données Decimal128. Cela est utile lorsque vous devez effectuer une arithmétique décimale précise ou gérer des valeurs décimales importantes qui ne peuvent pas être représentées avec précision à l'aide du type de données Double.

Paramètres

  • expression: expression à convertir au type de données Decimal128.

Exemple (MongoDB Shell)

Cet exemple montre comment utiliser l'$toDecimalopérateur pour convertir une valeur de chaîne en un type de données Decimal128.

Création d'exemples de documents

db.numbers.insertOne({ _id: 1, value: "3.14" }); db.numbers.insertOne({ _id: 2, value: "2.71" });

Exemple de requête

db.numbers.aggregate([ { $project: { _id: 1, decimalValue: { $toDecimal: "$value" } }} ])

Sortie

[ { "_id" : 1, "decimalValue" : Decimal128("3.14") }, { "_id" : 2, "decimalValue" : Decimal128("2.71") } ]

Exemples de code

Pour afficher un exemple de code relatif à l'utilisation de la $toDecimal commande, choisissez l'onglet correspondant à la langue que vous souhaitez utiliser :

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, decimalValue: { $toDecimal: "$value" } }} ]).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, 'decimalValue': {'$toDecimal': '$value'} }} ])) print(result) client.close() example()