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

$dateFromString

El operador de $dateFromString agregación de Amazon DocumentDB le permite convertir una cadena de fecha y hora en un objeto de fecha. Esto resulta útil cuando los datos se almacenan como cadenas, pero necesita realizar operaciones basadas en fechas con los datos.

Parámetros

  • dateString: cadena que representa una fecha y una hora.

  • format: (opcional) Una cadena que especifica el formato dedateString. Si no se proporciona, Amazon DocumentDB intentará analizar la cadena en el formato ISO-8601.

  • timezone: (opcional) Una cadena que especifica la zona horaria. Si no se proporciona, Amazon DocumentDB utilizará la zona horaria del servidor.

  • onError: (opcional) Especifica la acción que se debe realizar en caso de que se produzca un error en la conversión. Los valores posibles son 'error' (el valor predeterminado, que genera un error), 'null' (devuelvenull) o 'replace' (reemplaza el valor por la cadena de reemplazo especificada en la onErrorMessage opción).

  • onErrorMessage: (opcional) Si onError se establece en'replace', esta opción especifica la cadena de reemplazo.

Ejemplo (MongoDB Shell)

El siguiente ejemplo muestra cómo $dateFromString convertir una cadena de fecha en un objeto de fecha en Amazon DocumentDB.

Cree documentos de muestra

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

Ejemplo de consulta

db.missionLog.aggregate([ { $project: { event: '$event', logDate: { $dateFromString: { dateString: '$logDate' } } } } ]);

Salida

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

Ejemplos de código

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

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', logDate: { $dateFromString: { dateString: '$logDate' } } } } ]).toArray(); console.log(result); await 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['missionLog'] result = list(collection.aggregate([ { '$project': { 'event': '$event', 'logDate': { '$dateFromString': { 'dateString': '$logDate' } } } } ])) print(result) client.close() example()