1.mongodb插入 insert();save()
insert: db.collection_name.insert();
db.firstCollection.insert({_id:1,title:"mongdb"})
WriteResult({ "nInserted" : 1 })
_id是为objectId为唯一的12字节的十六进制数
db.collection_name.insertOne();插入会返回新文档_id字段值;
> db.firstCollection.insertOne({_id:2,title:"mongdb2"})
{ "acknowledged" : true, "insertedId" : 2 }
>
db.collection_name.insertMnay();同样会返回插入的_id
> db.firstCollection.insertMany([{_id:3,title:"mongdb3"},{_id:4,title:"mongdb4"},{_id:5,title:"mongdb5"}])
{ "acknowledged" : true, "insertedIds" : [ 3, 4, 5 ] }
2.mongodb查找find()
db.collection_name.find();
> db.firstCollection.find()
{ "_id" : 1, "title" : "mongdb" }
{ "_id" : 2, "title" : "mongdb2" }
{ "_id" : 3, "title" : "mongdb3" }
{ "_id" : 4, "title" : "mongdb4" }
{ "_id" : 5, "title" : "mongdb5" }
>
格式化显示:db.collection_name.find().pretty()
操作 | 语法 | 示例 | |
---|---|---|---|
相等 | {<key>:<value>} | db.mycol.find({"by":"yiibai"}).pretty() | by = 'yiibai' |
小于 | {<key>:{$lt:<value>}} | db.mycol.find({"likes":{$lt:50}}).pretty() | likes < 50 |
小于等于 | {<key>:{$lte:<value>}} | db.mycol.find({"likes":{$lte:50}}).pretty() | likes <= 50 |
大于 | {<key>:{$gt:<value>}} | db.mycol.find({"likes":{$gt:50}}).pretty() | likes > 50 |
大于等于 | {<key>:{$gte:<value>}} | db.mycol.find({"likes":{$gte:50}}).pretty() | likes >= 50 |
不等于 | {<key>:{$ne:<value>}} | db.mycol.find({"likes":{$ne:50}}).pretty() | likes != 50 |
> db.firstCollection.find({_id:4}).pretty()
{ "_id" : 4, "title" : "mongdb4" }
>
多条件查询 $and:
> db.firstCollection.find({$and:[{_id:1},{title:"mongdb"}]}).pretty()
{ "_id" : 1, "title" : "mongdb" }
>
还有$or
> db.firstCollection.find({$or:[{_id:1},{title:"mongdb2"}]}).pretty()
{ "_id" : 1, "title" : "mongdb" }
{ "_id" : 2, "title" : "mongdb2" }
3.修改文档 update save(直接替换掉)
> db.firstCollection.find({_id:1})
{ "_id" : 1, "title" : "mongdb" }
> db.firstCollection.update({_id:1},{$set:{title:"moooooo"}})
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
> db.firstCollection.find({_id:1})
{ "_id" : 1, "title" : "moooooo" }
>
4.删除文档 remove():删除条件&标志:
remove()有参数:
query: 删除文档条件;
justOne: 设置为1,或者true;只删除一个文档;
writeConcern: 抛出异常级别
> db.firstCollection.find()
{ "_id" : 1, "title" : "moooooo" }
{ "_id" : 2, "title" : "mongdb2" }
{ "_id" : 3, "title" : "mongdb3" }
{ "_id" : 4, "title" : "mongdb4" }
{ "_id" : 5, "title" : "mongdb5" }
> db.firstCollection.remove({_id:1})
WriteResult({ "nRemoved" : 1 })
> db.firstCollection.find()
{ "_id" : 2, "title" : "mongdb2" }
{ "_id" : 3, "title" : "mongdb3" }
{ "_id" : 4, "title" : "mongdb4" }
{ "_id" : 5, "title" : "mongdb5" }
>