mongoDB 原始操作语句
mongoDB 原始操作语句
操作 | 语法 |
---|---|
插入 | db.users.insert({ name:"peiqi",age:10}) |
查询 | db.users.find() |
更新 | db.users.update( {name:"peiqi"}, {$set:{age:2}}, {multi:true}) //可以更新多条 |
更新一条 | db.users.updateOne({name:"pq"}, {$set:{age:20}}) |
更新多条 | db.users.updateMany({name:"pq"}, {$set:{age:200}}) |
删除 | db.users.remove( {name:"zw"}, //条件 ObjectId {justOne:true} ) |
删除多 | db.users.deleteMany({}) |
删除1 | db.users.deleteOne({}) |
排序 | db.users.find({},{_id:0}).sort({age:-1}) 1顺序 -1倒序 |
分页 | db.users.find({},{_id:0}).skip(1).limit(1).sort({age:-1}) |
in | db.users.find({name:{$in:["a","b"]}}) |
查询列为不为空 | db.users.find({sex:{$exists:false}}) |
逻辑运算 | db.users.find( { $and:[ {age:{$gte:28}}, {age:{$lte:30}} ] } ) |
AND简写 | db.users.find( { $and:[ {age:{$gte:28}}, {age:{$lte:30}} ] } ) |
正则 | db.users.find( {name: {$regex:/^da/}}) |
集合状态 | db.users.stats() |
数组操作 | db.student.updateMany({}, {$set:{hobby:[]}}) |
添加数组 | db.student.update({name:"zhao"}, {$push:{hobby:"java"}}) |
增加多个数组 | db.student.update({name:"zhao"}, {$push:{hobby:{$each:["32","dd"]}}}) |
不添加重复 | db.student.update({name:"zhao"}, {$addToSet:{hobby:"java3"}}) |
删除指定位置 | db.users.update({name:'zhao'},{$pop:{hobby:1}}) |
删除指定值 | db.users.update({name:'zhao'}, {$pull:{hobby:'java'}}) |
更新指定位置 | db.users.update({name:'zhao'}, {$set:{'hobby.1':'ff'}}) |
更新指定值得元素 | db.users.update({name:'zhao', hobby:'c'}, {$set:{'hobby.$':'c#'}}) |
db.event.aggregate([ | |
{$group: {"_id": "$event_id", count: {$sum: 1}}}, | |
{$project: {"_id": 0, "event_id": "$_id", "count": 1}}, | |
{$sort: {"count": -1}} | |
]) |
db.express_info.aggregate([{$match:{"mobile":"18663930231"}},{$group : {_id : "$express_code",date_time:{$first:"$datetime"},express_code:{$first:"$express_code"}, num_tutorial : {$sum : 1}}},{$sort:{"datetime":-1}},{$skip:5},{$limit:5}])
格式化时间
db.trace_20220623.aggregate(
[
{
$match: { "imei":"861130040443601","dataType" : "DATA_ACC" }
},
{
$project: {
'新时间': {
$dateToString: {
format: "%Y-%m-%d %H:%M:%S",
date: {
$add: [{
$add: [ISODate("1970-01-01T00:00:00Z"), {
$multiply: ["$createTime", 1]
}]
}, 28800000]
}
}
},
createTime: 1,
imei:1,
dataType:1
}
}
]
)