$dateTrunc - Amazon DocumentDB

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

$dateTrunc

버전 8.0의 새로운 기능

Elastic 클러스터에서는 지원되지 않습니다.

Amazon DocumentDB의 $dateTrunc 집계 연산자는 날짜를 지정된 단위로 잘라냅니다.

파라미터

  • date: 날짜 또는 타임스탬프로 확인되는 날짜 표현식입니다.

  • unit: 하위 추적 표현식의 시간 단위를 지정하는 문자열입니다. 지원되는 단위는 year, quarter, month, week, day, hour, minute, 및 second입니다millisecond.

예제(MongoDB 쉘)

다음 예제에서는 $dateTrunc 연산자를 사용하여 날짜를 시간으로 자르는 방법을 보여줍니다.

샘플 문서 생성

db.events.insertMany([ { eventName: "Event 1", eventTime: ISODate("2025-04-01T12:15:00Z") }, { eventName: "Event 2", eventTime: ISODate("2025-08-15T14:33:22Z") }, ]);

쿼리 예제

db.events.aggregate([ { $project: { eventName: 1, eventTime: 1, truncatedToHour: { $dateTrunc: { date: "$eventTime", unit: "hour" } } } } ]);

출력

[ { _id: ObjectId('6924a258d66dcae121d29515'), eventName: 'Event 1', eventTime: ISODate('2025-04-01T12:15:00.000Z'), truncatedToHour: ISODate('2025-04-01T12:00:00.000Z') }, { _id: ObjectId('6924a258d66dcae121d29516'), eventName: 'Event 2', eventTime: ISODate('2025-08-15T14:33:22.000Z'), truncatedToHour: ISODate('2025-08-15T14:00:00.000Z') } ]

코드 예제

$dateTrunc 명령을 사용하기 위한 코드 예제를 보려면 사용하려는 언어의 탭을 선택합니다.

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 events = db.collection('events'); const result = await events.aggregate([ { $project: { eventName: 1, eventTime: 1, truncatedToHour: { $dateTrunc: { date: "$eventTime", unit: "hour" } } } } ]).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'] events = db['events'] result = list(events.aggregate([ { "$project": { "eventName": 1, "eventTime": 1, "truncatedToHour": { "$dateTrunc": { "date": "$eventTime", "unit": "hour" } } } } ])) print(result) client.close() example()