

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.

# \$1 à ce jour
<a name="toDate"></a>

Nouveau depuis la version 4.0

L'opérateur `$toDate` d'agrégation dans Amazon DocumentDB est utilisé pour convertir une date ou une chaîne de date et d'heure en un type BSON Date. Il s'agit de l'opération inverse de l'`$dateToString`opérateur.

**Paramètres**
+ `dateString`: représentation sous forme de chaîne d'une date ou d'une date et d'une heure à convertir en un type de date BSON.
+ `format`: (facultatif) Chaîne qui spécifie le format du`dateString`. Si ce n'est pas le cas, l'opérateur tentera de les analyser `dateString` dans différents formats de date et d'heure standard.
+ `timezone`: (facultatif) Chaîne représentant le fuseau horaire à utiliser pour la conversion. S'il n'est pas indiqué, le fuseau horaire local est utilisé.

## Exemple (MongoDB Shell)
<a name="toDate-examples"></a>

L'exemple suivant montre comment utiliser l'`$toDate`opérateur pour convertir une chaîne de date en un type BSON Date.

**Création d'exemples de documents**

```
db.events.insertMany([
  { _id: 1, eventName: "Mission Start", eventTime: "2023-04-15T10:30:00Z" },
  { _id: 2, eventName: "Checkpoint Reached", eventTime: "2023-04-15T11:15:00Z" },
  { _id: 3, eventName: "Mission End", eventTime: "2023-04-15T12:00:00Z" }
]);
```

**Exemple de requête**

```
db.events.aggregate([
  {
    $project: {
      eventName: 1,
      eventTimeDate: { $toDate: "$eventTime" }
    }
  }
]);
```

**Sortie**

```
[
  {
    "_id": 1,
    "eventName": "Mission Start",
    "eventTimeDate": ISODate("2023-04-15T10:30:00Z")
  },
  {
    "_id": 2,
    "eventName": "Checkpoint Reached",
    "eventTimeDate": ISODate("2023-04-15T11:15:00Z")
  },
  {
    "_id": 3,
    "eventName": "Mission End",
    "eventTimeDate": ISODate("2023-04-15T12:00:00Z")
  }
]
```

## Exemples de code
<a name="toDate-code"></a>

Pour afficher un exemple de code d'utilisation de la `$toDate` 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('events');

  const result = await collection.aggregate([
    {
      $project: {
        eventName: 1,
        eventTimeDate: { $toDate: '$eventTime' }
      }
    }
  ]).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['events']

    result = list(collection.aggregate([
        {
            '$project': {
                'eventName': 1,
                'eventTimeDate': { '$toDate': '$eventTime' }
            }
        }
    ]))

    print(result)
    client.close()

example()
```

------