Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Operator $subtract
digunakan untuk mengurangi dua angka dan mengembalikan hasilnya. Operator ini berguna dalam berbagai skenario seperti menghitung perbedaan antara tanggal, waktu, atau nilai numerik dalam dokumen.
Sintaksis
{ $subtract: [ <expression1>, <expression2> ] }
Parameter-parameternya
Pengaturan | Deskripsi |
---|---|
<expression1> |
Minuend (angka dari mana angka lain akan dikurangi). |
<expression2> |
Subtrahend (angka yang akan dikurangi). |
Contoh
Contoh 1: Mengurangi Total Penjualan dari Penjualan Penuh
Contoh berikut menunjukkan cara mengurangi fullSales
nilai dari totalSales
nilai dalam salesByCategory
array.
db.collection.aggregate([
{
$project: {
category: "$sales.salesByCategory.categoryName",
salesDifference: { $subtract: ["$sales.salesByCategory.totalSales", "$sales.fullSales"] }
}
}
])
Output ini menunjukkan perbedaan antara totalSales dan fullSales untuk setiap kategori:
[
{ "_id": 1, "category": "Electronics", "salesDifference": 500 },
{ "_id": 2, "category": "Clothing", "salesDifference": -200 },
{ "_id": 3, "category": "Home Appliances", "salesDifference": 1000 }
]
Contoh 2: Menghitung Durasi Acara Promosi
Contoh berikut menghitung durasi acara promosi dalam hari dengan mengurangi startDate
dari endDate
.
db.collection.aggregate([
{
$project: {
eventName: "$promotionEvents.eventName",
eventDuration: {
$subtract: [
{ $dateFromParts: { year: "$promotionEvents.promotionalDates.endDate.Year", month: "$promotionEvents.promotionalDates.endDate.Month", day: "$promotionEvents.promotionalDates.endDate.Day" } },
{ $dateFromParts: { year: "$promotionEvents.promotionalDates.startDate.Year", month: "$promotionEvents.promotionalDates.startDate.Month", day: "$promotionEvents.promotionalDates.startDate.Day" } }
]
}
}
}
])
Output ini menghitung jumlah hari antara tanggal mulai dan berakhir dari setiap acara promosi:
[
{
"_id": 4,
"eventName": "Black Friday",
"eventDuration": 5
},
{
"_id": 5,
"eventName": "Holiday Sale",
"eventDuration": 10
}
]
Konten terkait
- Meninjau opsi untuk Migrasi dari MongoDB ke Azure Cosmos DB untuk MongoDB (vCore)
- Baca selengkapnya tentang Kompatibilitas fitur dengan MongoDB