$isoWeekYear - Amazon DocumentDB

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

$isoWeekYear

$isoWeekYearOperator di Amazon DocumentDB mengembalikan nomor tahun ISO 8601 minggu untuk tanggal tertentu. Nomor tahun minggu ISO berbeda dari tahun kalender Gregorian karena tahun minggu dapat berbeda dari tahun kalender, terutama pada awal dan akhir tahun.

Parameter

  • expression: Ekspresi tanggal untuk mengembalikan nomor tahun ISO 8601 minggu.

Contoh (MongoDB Shell)

Contoh ini menunjukkan cara menggunakan $isoWeekYear operator untuk mengambil tahun ISO 8601 minggu untuk bidang tanggal setiap dokumen dalam koleksi peristiwa.

Buat dokumen sampel

db.events.insertMany([ { _id: 1, name: "Event 1", date: ISODate("2022-12-31T00:00:00Z") }, { _id: 2, name: "Event 2", date: ISODate("2023-01-01T00:00:00Z") }, { _id: 3, name: "Event 3", date: ISODate("2023-01-02T00:00:00Z") } ]);

Contoh kueri

db.events.aggregate([ { $project: { name: 1, isoWeekYear: { $isoWeekYear: "$date" } }} ]);

Keluaran

[ { "_id" : 1, "name" : "Event 1", "isoWeekYear" : 2023 }, { "_id" : 2, "name" : "Event 2", "isoWeekYear" : 2023 }, { "_id" : 3, "name" : "Event 3", "isoWeekYear" : 2023 } ]

Contoh kode

Untuk melihat contoh kode untuk menggunakan $isoWeekYear perintah, pilih tab untuk bahasa yang ingin Anda gunakan:

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: { name: 1, isoWeekYear: { $isoWeekYear: '$date' } }} ]).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': { 'name': 1, 'isoWeekYear': { '$isoWeekYear': '$date' } }} ])) print(result) client.close() example()