mongodb的一些命令操作

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_30843221/article/details/71746690

关于对mongodb的操作:

终端连接mongo命令: mongo
关闭数据库:sudo service mongodb stop 
开启数据库 sudo service mongodb start

关于对文档集合的操作: ( 缺乏键的约束)

查看文档集合: show collections;
创建文档集合: db.createCollection(“quincyDB”, {“name”: “quincy”});
以插入的形式新建:db.hello2.insert({“name”:”quincy”});
删除文档: db.hello2.drop();

关于对文档内容的增删查改操作

(1)文档中增加新的记录(不需要与原来的具有同样的属性): 
db.quincyDB.insert({“name”: “little quincy”, “age”: 21, “area”: “gd”});
相当与sql中的插入语句:
insert into tablename(attr 1, attr2 , attr3) values (value1, value2, value3);

(2)文档中查询记录:
通用的查找: db.quincyDB.find().pretty();
特定查找: db.quincyDB. find({“name”: “little quincy”});
相当于 select * from quincyDB where name = little quincy;
将查询条件写在find函数内:
例如:  db.quincyDB.find({"age":{$lt:23}});       
错误示范: db.quincyDB.find({"age" < 23});
gt : 大于 ; lt: 小于 ; gte: 大于等于; lte: 小于等于
模糊查询: db.quincyDB.find({“name”: /little/”})
相当于select * from quincyDB where  name like ‘little’;

(3) 文档中修改记录:
db.collection.update(criteria, objNew, upsert, multi)
criteria: update的查询条件, 类似sql update 查询内where 后面的;
objNew: update 的对象和一些更新的操作符等,也可以理解为sql update查询内set后面的
upset: 这个参数的意思是, 如果不存在update的记录, 是否插入objNew, true为插入, 默认是false, 不插入.
Multi: mongodb默认是false, 只更新找到的第一条记录, 如果这个参数为true, 就把按条件查出来多条记录全部更新.
例子:db.quincyDB.update({"age":22},{$set:{"name":"quincy"}},false, false);

(4) 文档中删除记录:
db.quincyDB.remove({"area":"gd"});

猜你喜欢

转载自blog.csdn.net/qq_30843221/article/details/71746690