Kurangi hari dari tanggal mongodb

Kurangi dua angka untuk mengembalikan perbedaan, atau dua tanggal untuk mengembalikan perbedaan dalam milidetik, atau tanggal dan angka dalam milidetik untuk mengembalikan tanggal yang dihasilkan

Ekspresi $subtract memiliki sintaks berikut

{ $subtract: [ <expression1>, <expression2> ] }

Argumen kedua dikurangi dari argumen pertama

Argumen dapat valid selama mereka memutuskan angka dan/atau tanggal. Untuk mengurangkan angka dari tanggal, tanggal harus menjadi argumen pertama. Untuk informasi lebih lanjut tentang ekspresi, lihat

Contoh

Pertimbangkan koleksi

{ "_id" : 1, "item" : "abc", "price" : 10, "fee" : 2, "discount" : 5, "date" : ISODate("2014-03-01T08:00:00Z") }
{ "_id" : 2, "item" : "jkl", "price" : 20, "fee" : 1, "discount" : 2, "date" : ISODate("2014-03-01T09:00:00Z") }
_0 dengan dokumen-dokumen berikut

{ "_id" : 1, "item" : "abc", "price" : 10, "fee" : 2, "discount" : 5, "date" : ISODate("2014-03-01T08:00:00Z") }
{ "_id" : 2, "item" : "jkl", "price" : 20, "fee" : 1, "discount" : 2, "date" : ISODate("2014-03-01T09:00:00Z") }
_

Kurangi Angka

Agregasi berikut menggunakan ekspresi $subtract untuk menghitung

{ "_id" : 1, "item" : "abc", "price" : 10, "fee" : 2, "discount" : 5, "date" : ISODate("2014-03-01T08:00:00Z") }
{ "_id" : 2, "item" : "jkl", "price" : 20, "fee" : 1, "discount" : 2, "date" : ISODate("2014-03-01T09:00:00Z") }
2 dengan mengurangkan
{ "_id" : 1, "item" : "abc", "price" : 10, "fee" : 2, "discount" : 5, "date" : ISODate("2014-03-01T08:00:00Z") }
{ "_id" : 2, "item" : "jkl", "price" : 20, "fee" : 1, "discount" : 2, "date" : ISODate("2014-03-01T09:00:00Z") }
3 dari subtotal
{ "_id" : 1, "item" : "abc", "price" : 10, "fee" : 2, "discount" : 5, "date" : ISODate("2014-03-01T08:00:00Z") }
{ "_id" : 2, "item" : "jkl", "price" : 20, "fee" : 1, "discount" : 2, "date" : ISODate("2014-03-01T09:00:00Z") }
4 dan
{ "_id" : 1, "item" : "abc", "price" : 10, "fee" : 2, "discount" : 5, "date" : ISODate("2014-03-01T08:00:00Z") }
{ "_id" : 2, "item" : "jkl", "price" : 20, "fee" : 1, "discount" : 2, "date" : ISODate("2014-03-01T09:00:00Z") }
5

db.sales.aggregate( [ { $project: { item: 1, total: { $subtract: [ { $add: [ "$price", "$fee" ] }, "$discount" ] } } } ] )

Operasi mengembalikan hasil berikut

{ "_id" : 1, "item" : "abc", "total" : 7 }
{ "_id" : 2, "item" : "jkl", "total" : 19 }
_

Kurangi Dua Tanggal

Agregasi berikut menggunakan ekspresi $subtract untuk mengurangi

{ "_id" : 1, "item" : "abc", "price" : 10, "fee" : 2, "discount" : 5, "date" : ISODate("2014-03-01T08:00:00Z") }
{ "_id" : 2, "item" : "jkl", "price" : 20, "fee" : 1, "discount" : 2, "date" : ISODate("2014-03-01T09:00:00Z") }
7 dari tanggal saat ini

db.sales.aggregate( [ { $project: { item: 1, dateDifference: { $subtract: [ new Date(), "$date" ] } } } ] )

Operasi mengembalikan hasil berikut

{ "_id" : 1, "item" : "abc", "dateDifference" : NumberLong("11713985194") }
{ "_id" : 2, "item" : "jkl", "dateDifference" : NumberLong("11710385194") }

Kurangi Milidetik dari Tanggal

Agregasi berikut menggunakan ekspresi $subtract untuk mengurangi 5 * 60 * 1000 milidetik (5 menit) dari kolom “$date”

db.sales.aggregate( [ { $project: { item: 1, dateDifference: { $subtract: [ "$date", 5 * 60 * 1000 ] } } } ] )

Operasi mengembalikan hasil berikut

{ "_id" : 1, "item" : "abc", "dateDifference" : ISODate("2014-03-01T07:55:00Z") }
{ "_id" : 2, "item" : "jkl", "dateDifference" : ISODate("2014-03-01T08:55:00Z") }

←   $sqrt (agregasi) $trunc (agregasi)  →

© MongoDB, Inc 2008-sekarang. MongoDB, Mongo, dan logo daun adalah merek dagang terdaftar dari MongoDB, Inc

Bagaimana cara menghitung perbedaan tanggal di MongoDB?

Ekspresi $dateDiff mengembalikan selisih bilangan bulat antara tanggal mulai dan tanggal akhir yang diukur dalam unit yang ditentukan . Durasi diukur dengan menghitung berapa kali batas satuan dilewati. Misalnya, dua tanggal dengan jarak 18 bulan akan menghasilkan selisih 1 tahun, bukan 1. 5 tahun.

Bagaimana cara menambahkan hari ke tanggal di MongoDB?

Tambahkan Tanggal Mendatang . Setelah menambahkan 3 hari ke tanggal pembelian dengan $dateAdd di tahap $project, tahap $merge memperbarui dokumen asli dengan tanggalpengiriman yang diharapkan. use $dateAdd in an aggregation pipeline to set an expectedDeliveryDate 3 days in the future. After adding 3 days to the purchaseDate with $dateAdd in the $project stage, the $merge stage updates the original documents with the expectedDeliveryDate .

Bagaimana cara menggunakan $set di MongoDB?

Operator $set mengganti nilai bidang dengan nilai yang ditentukan . Ekspresi operator $set memiliki bentuk berikut. { $set. {

Bagaimana cara menggunakan tanggal di MongoDB?

Anda dapat menentukan tanggal tertentu dengan melewati string tanggal ISO-8601 dengan tahun dalam rentang inklusif 0 hingga 9999 ke konstruktor Date() baru atau ISODate() . Fungsi-fungsi ini menerima format berikut. Tanggal baru(". These functions accept the following formats: new Date("") returns the ISODate with the specified date.