$second - Amazon DocumentDB

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

$second

$secondOperator di Amazon DocumentDB mengekstrak komponen detik dari tanggal atau stempel waktu. Ini digunakan untuk mengambil nilai detik dari bidang tanggal atau timestamp.

Parameter

  • expression: Bidang tanggal atau stempel waktu untuk mengekstrak nilai detik dari. Ekspresi ini dapat berupa jalur bidang atau ekspresi valid apa pun yang menyelesaikan tanggal atau stempel waktu.

Contoh (MongoDB Shell)

Contoh berikut menunjukkan bagaimana menggunakan $second operator untuk mengekstrak komponen detik dari bidang tanggal.

Buat dokumen sampel

db.users.insertMany([ { name: "John", dob: new Date("1990-05-15T12:30:45Z") }, { name: "Jane", dob: new Date("1985-09-20T23:59:59Z") }, { name: "Bob", dob: new Date("2000-01-01T00:00:00Z") } ]);

Contoh kueri

db.users.aggregate([{ $project: { name: 1, dobSeconds: { $second: "$dob" } } }])

Keluaran

[ { "_id" : ObjectId("6089a9c306a829d1f8b456a1"), "name" : "John", "dobSeconds" : 45 }, { "_id" : ObjectId("6089a9c306a829d1f8b456a2"), "name" : "Jane", "dobSeconds" : 59 }, { "_id" : ObjectId("6089a9c306a829d1f8b456a3"), "name" : "Bob", "dobSeconds" : 0 } ]

Contoh kode

Untuk melihat contoh kode untuk menggunakan $second 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 users = db.collection('users'); const result = await users.aggregate([{ $project: { name: 1, dobSeconds: { $second: '$dob' } } }]).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'] users = db['users'] result = list(users.aggregate([{'$project': {'name': 1, 'dobSeconds': {'$second': '$dob'}}}])) print(result) client.close() example ()