$dateToString - 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.

$dateToString

L'opérateur $dateToString d'agrégation dans Amazon DocumentDB est utilisé pour convertir une valeur de date ou d'horodatage en une représentation sous forme de chaîne. Cela est utile lorsque vous devez formater la date et l'heure d'une manière spécifique pour l'affichage ou un traitement ultérieur.

Paramètres

  • date: valeur de date ou d'horodatage à convertir en chaîne.

  • format: chaîne qui indique le format dans lequel la date doit être représentée. La chaîne de format peut inclure différents spécificateurs de format, tels que %Y pour l'année à quatre chiffres, %m pour le mois à deux chiffres, %d pour le jour du mois à deux chiffres, etc.

  • timezone: (facultatif) Fuseau horaire à utiliser pour la conversion. S'il n'est pas spécifié, le fuseau horaire du serveur hébergeant le cluster Amazon DocumentDB est utilisé.

  • onNull: (facultatif) La valeur à renvoyer si le date paramètre estnull.

Exemple (MongoDB Shell)

L'exemple suivant illustre l'utilisation de l'$dateToStringopérateur pour formater le logDate champ de la missionLog collection.

Création d'exemples de documents

db.missionLog.insertMany([ { _id: 1, "event":"missionStart", logDate: new Date("2020-03-15T13:41:33Z") }, { _id: 2, "event":"jumpPoint1", logDate: new Date("2020-03-15T13:45:34Z") }, { _id: 3, "event":"jumpPoint2", logDate: new Date("2020-03-15T13:48:21Z") }, { _id: 4, "event":"jumpPoint3", logDate: new Date("2020-03-15T13:52:09Z") }, { _id: 5, "event":"missionEnd", logDate: new Date("2020-03-15T13:58:44Z") } ]);

Exemple de requête

db.missionLog.aggregate([ { $project: { event: "$event", logDateFormatted: { $dateToString: { format: "%Y-%m-%d %H:%M:%S", date: "$logDate" } } } } ])

Sortie

[ { "_id": 1, "event": "missionStart", "logDateFormatted": "2020-03-15 13:41:33" }, { "_id": 2, "event": "jumpPoint1", "logDateFormatted": "2020-03-15 13:45:34" }, { "_id": 3, "event": "jumpPoint2", "logDateFormatted": "2020-03-15 13:48:21" }, { "_id": 4, "event": "jumpPoint3", "logDateFormatted": "2020-03-15 13:52:09" }, { "_id": 5, "event": "missionEnd", "logDateFormatted": "2020-03-15 13:58:44" } ]

Exemples de code

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

Node.js

Voici un exemple d'utilisation de l'$dateToStringopérateur dans une application 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('missionLog'); const result = await collection.aggregate([ { $project: { event: "$event", logDateFormatted: { $dateToString: { format: "%Y-%m-%d %H:%M:%S", date: "$logDate" } } } } ]).toArray(); console.log(result); await client.close(); } example();
Python

Voici un exemple d'utilisation de l'$dateToStringopérateur dans une application 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['missionLog'] pipeline = [ { '$project': { 'event': '$event', 'logDateFormatted': { '$dateToString': { 'format': '%Y-%m-%d %H:%M:%S', 'date': '$logDate' } } } } ] result = list(collection.aggregate(pipeline)) print(result) client.close() example()