去重
db.collction.aggregate(
[
//{$match:{type:1,action:3}}, //可以加条件给这里 匹配type=1 action=3 可选
{ //根据title、id分组,$group只会返回参与分组的字段,使用$addToSet在返回结果数组中增加_id字段)
$group: {
_id: {
title: '$title',
id: '$id'
},
count: {
$sum: 1
},
dups: {
$addToSet: '$_id'
}
}
},
{
$match: {
count: { //(匹配数量大于1的数据
$gt: 1
}
}
}
]
)
.forEach( //(使用forEach循环根据_id删除数据)
function( doc ){
doc.dups.shift();
db.collection.remove(
{
_id: {
$in: doc.dups
}
}
);
}
)
删库(table)
db.collection.drop()
去重查询 distinct
db.collection.distinct(title)
分页
- 查询在5-10之间的数据
db.collection.find().limit(10).skip(5);
条数
db.collection.find({}).count()
排序
//升序
db.collection.find().sort({"id":1})
//降序
db.collection.find().sort({"id":-1})
指定条件查询
“
- id = 100 age=18
db.collection.find({ id:100 , age : 18 })
- id > 100
db.collection.find({ id:{$gt :100 } })
- id >= 100
db.collection.find({ id:{ $gte:100 }})
- id < 100
db.collection.find({ id:{$lt :100 }})
- id <= 100
db.collection.find({ id:{ $lte:100 }})
- id => 100 与 id <= 150
db.collection.find({ id:{ $gte:100 , $lte:150}})
- 指定列 id title,1 查询 -1 不查询
db.collection.find({ } , { id:1 , title : 1 })
- or 查询
db.collection.find({$or:[ {age:15},{age:25 } ]})