

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

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

Amazon DocumentDB의 `$dateFromString` 집계 연산자를 사용하면 날짜-시간 문자열을 날짜 객체로 변환할 수 있습니다. 이는 데이터가 문자열로 저장되지만 데이터에 대해 날짜 기반 작업을 수행해야 하는 경우에 유용합니다.

**파라미터**
+ `dateString`: 날짜 및 시간을 나타내는 문자열입니다.
+ `format`: (선택 사항) 형식을 지정하는 문자열입니다`dateString`. 제공되지 않으면 Amazon DocumentDB는 ISO-8601 형식으로 문자열을 구문 분석하려고 시도합니다.
+ `timezone`: (선택 사항) 시간대를 지정하는 문자열입니다. 제공되지 않은 경우 Amazon DocumentDB는 서버의 시간대를 사용합니다.
+ `onError`: (선택 사항) 변환에 실패할 경우 수행할 작업을 지정합니다. 가능한 값은 `'error'` (오류를 발생시키는 기본값), `'null'` (를 반환) 또는 `'replace'` ( 값을 `onErrorMessage` 옵션에 지정된 대체 문자열로 대체`null`)입니다.
+ `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()
```

------