$dateToString - Amazon DocumentDB

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

$dateToString

El operador de $dateToString agregación de Amazon DocumentDB se utiliza para convertir un valor de fecha o marca horaria en una representación de cadena. Esto resulta útil cuando necesita formatear la fecha y la hora de una manera específica para mostrarlas o procesarlas posteriormente.

Parámetros

  • date: el valor de fecha o marca horaria que se va a convertir en una cadena.

  • format: cadena que especifica el formato en el que debe representarse la fecha. La cadena de formato puede incluir varios especificadores de formato, por ejemplo, %Y para el año de cuatro dígitos, %m para el mes de dos dígitos, %d para el día del mes de dos dígitos, etc.

  • timezone: (opcional) La zona horaria que se utilizará para la conversión. Si no se especifica, se utiliza la zona horaria del servidor que aloja el clúster de Amazon DocumentDB.

  • onNull: (opcional) El valor que se devolverá si el date parámetro esnull.

Ejemplo (MongoDB Shell)

El siguiente ejemplo demuestra el uso del $dateToString operador para formatear el logDate campo de la missionLog colección.

Cree documentos de muestra

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

Ejemplo de consulta

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

Salida

[ { "_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" } ]

Ejemplos de código

Para ver un ejemplo de código para usar el $dateToString comando, elija la pestaña del idioma que desee usar:

Node.js

A continuación, se muestra un ejemplo del uso del $dateToString operador en una aplicación de 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

Este es un ejemplo del uso del $dateToString operador en una aplicación de 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()