

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# \$1dateFromString
<a name="dateFromString"></a>

Amazon DocumentDB の`$dateFromString`集計演算子を使用すると、日時文字列を日付オブジェクトに変換できます。これは、データが文字列として保存されているが、データに対して日付ベースのオペレーションを実行する必要がある場合に便利です。

**パラメータ**
+ `dateString`: 日付と時刻を表す文字列。
+ `format`: (オプション) の形式を指定する文字列`dateString`。指定しない場合、Amazon DocumentDB は ISO-8601 形式で文字列の解析を試みます。
+ `timezone`: (オプション) タイムゾーンを指定する文字列。指定しない場合、Amazon DocumentDB はサーバーのタイムゾーンを使用します。
+ `onError`: (オプション) 変換が失敗した場合に実行するアクションを指定します。指定できる値は、 `'error'` (エラーをスローするデフォルト）、 `'null'` ( を返す`null`)、または `'replace'` ( 値を `onErrorMessage`オプションで指定された置換文字列に置き換えます) です。
+ `onErrorMessage`: (オプション) `onError`が に設定されている場合`'replace'`、このオプションは置き換え文字列を指定します。

## 例 (MongoDB シェル)
<a name="dateFromString-examples"></a>

次の例は、 `$dateFromString`を使用して Amazon DocumentDB の日付文字列を日付オブジェクトに変換する方法を示しています。

**サンプルドキュメントを作成する**

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

**クエリの例**

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

**出力**

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

## コードの例
<a name="dateFromString-code"></a>

`$dateFromString` コマンドを使用するコード例を表示するには、使用する言語のタブを選択します。

------
#### [ 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()
```

------