$dateToString - Amazon DocumentDB

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

$dateToString

O operador $dateToString de agregação no Amazon DocumentDB é usado para converter um valor de data ou timestamp em uma representação de string. Isso é útil quando você precisa formatar a data e a hora de uma forma específica para exibição ou processamento posterior.

Parâmetros

  • date: o valor da data ou do carimbo de data/hora a ser convertido em uma string.

  • format: uma string que especifica o formato no qual a data deve ser representada. A string de formato pode incluir vários especificadores de formato, como %Y para o ano de quatro dígitos, %m para o mês de dois dígitos, para o dia do mês com dois dígitos etc. %d

  • timezone: (opcional) O fuso horário a ser usado para a conversão. Se não for especificado, o fuso horário do servidor que hospeda o cluster Amazon DocumentDB será usado.

  • onNull: (opcional) O valor a ser retornado se o date parâmetro fornull.

Exemplo (MongoDB Shell)

O exemplo a seguir demonstra o uso do $dateToString operador para formatar o logDate campo da missionLog coleção.

Crie documentos de amostra

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

Exemplo de consulta

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

Saída

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

Exemplos de código

Para ver um exemplo de código para usar o $dateToString comando, escolha a guia do idioma que você deseja usar:

Node.js

Aqui está um exemplo de uso do $dateToString operador em um aplicativo 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

Aqui está um exemplo de uso do $dateToString operador em um aplicativo 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()