Condition array field is not empty
db.users.find({ pictures: { $exists: true, $not: {$size: 0} } })
// or
db.users.find({ pictures: { $exists: true, $ne: [] } })
Search like with regex
db.users.find({'name': {'$regex': 'sometext'}})
Update Many
db.listings.updateMany({
$and: [
{ "created_at": { $lt: ISODate("2021-08-01") }},
{ "checkup.status": "wait" }
]
}, { "$set":{ "checkup.status": "pass" }}, { upsert: true })
Remove duplicate documents in mongodb
db.test.aggregate(
[
{
$group: {
_id: "$question",
count: { $sum: 1 },
list: { $addToSet: '$_id' },
round: { $first: "$round" }
}
},
{ $match: {
"$and": [
{ "round" : 0 },
{ 'list.1': { $exists: 1 } }
]}
},
{ $sort: {count: -1} }
]
).forEach(item => {
const list = item.list.slice(1);
db.test.deleteMany({ _id: { $in: list }});
print("question:", item._id, "| count:", item.count)
});
ตามที่เอกสารบอกไว้ โปรดใช้ความระมัดระวังอย่างยิ่งกับการ Remove duplicate documents เนื่องจากจะเป็นการลบข้อมูลออกจากฐานข้อมูล สำรองฐานข้อมูลของคุณก่อน เผื่อไว้ในกรณีที่เกิดการผิดพลาด
---