$dateSubtract - Amazon DocumentDB

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

$dateSubtract

バージョン 5.0 の新機能

Amazon DocumentDB の$dateSubtract集計演算子を使用すると、指定された期間を日付値から減算できます。

パラメータ

  • date: 日付またはタイムスタンプに解決される日付式。

  • subtrahend: 式から減算する時間を指定する期間date式。

  • unit: subtrahend式の時間単位を指定する文字列。サポートされている単位は、「年」、「四半期」、「月」、「週」、「日」、「時間」、「分」、「秒」、「ミリ秒」です。

例 (MongoDB シェル)

次の例は、 $dateSubtract演算子を使用して、現在の日付から 1 年前の日付を計算する方法を示しています。

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

db.events.insertOne({ eventName: "Player joined", eventTime: ISODate("2023-04-01T12:00:00Z") });

クエリの例

db.events.aggregate([ { $project: { eventName: 1, oneYearAgo: { $dateSubtract: { startDate: "$eventTime", amount: 1, unit: "year" } } } } ])

出力

{ "_id" : ObjectId("64567890abcdef012345678"), "eventName" : "Player joined", "oneYearAgo" : ISODate("2022-04-01T12:00:00Z") }

コードの例

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

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, oneYearAgo: { $dateSubtract: { startDate: "$eventTime", amount: 1, unit: "year" } } } } ]).toArray(); console.log(result); await client.close(); } example();
Python
from pymongo import MongoClient from bson.date_time import datetime 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, 'oneYearAgo': { '$dateSubtract': { 'startDate': '$eventTime', 'amount': 1, 'unit': 'year' } } } } ])) print(result) client.close() example()