MongoDB总结

MongoDB的一些操作总结
1、创建库: use database_name, 创建库之后需要插入数据才行
2、删除库: 进入该库后 db.dropDatabase()
3、创建集合: db.createCollectin(name, options)
4、删除集合: db.collection_name.drop({})
5、插入文档: db.collection_name.insert({})
6、更新文档:
i、 只更新数据: db.collection_name.update({指定的文档},{$set:{具体的数据},boolean,boolean)
这两个Boolean默认不写(默认更新第一个文档的数据)
其中第一个Boolean: false:只更新数据,true:插入数据
第二个Boolean: false: 只更新第一个文档,true:更新全部文档
7、删除文档: db.collection_name.remove({})
8、查询文档: db.collection_name.find(query, projection)
query :可选,使用查询操作符指定查询条件
projection :可选,使用投影操作符指定返回的键。查询时返回文档中所有键值, 只需省略该参数即可(默认省略)。

i、如果你需要以易读的方式来读取数据,可以使用 pretty() 方法(使用工具查询时无所谓)
	语法格式如:db.col.find().pretty()
ii、除了 find() 方法之外,还有一个 findOne() 方法,它只返回一个文档。
iii、
	操作		格式					范例										RDBMS中的类似语句
	等于		{<key>:<value>}			db.col.find({"by":"菜鸟教程"}).pretty()		where by = '菜鸟教程'
	小于		{<key>:{$lt:<value>}}	db.col.find({"likes":{$lt:50}}).pretty()	where likes < 50		
	小于或等于	{<key>:{$lte:<value>}}	db.col.find({"likes":{$lte:50}}).pretty()	where likes <= 50
	大于		{<key>:{$gt:<value>}}	db.col.find({"likes":{$gt:50}}).pretty()	where likes > 50
	大于或等于	{<key>:{$gte:<value>}}	db.col.find({"likes":{$gte:50}}).pretty()	where likes >= 50
	不等于		{<key>:{$ne:<value>}}	db.col.find({"likes":{$ne:50}}).pretty()	where likes != 50
iv、MongoDB AND 条件
	MongoDB 的 find() 方法可以传入多个键(key),每个键(key)以逗号隔开,即常规 SQL 的 AND 条件。
	语法格式如:db.col.find({key1:value1, key2:value2})
	 db.col.find({"by":"菜鸟教程", "title":"MongoDB 教程"}).pretty()
	{
			"_id" : ObjectId("56063f17ade2f21f36b03133"),
			"title" : "MongoDB 教程",
			"description" : "MongoDB 是一个 Nosql 数据库",
			"by" : "菜鸟教程",
			"url" : "http://www.runoob.com",
			"tags" : [
					"mongodb",
					"database",
					"NoSQL"
			],
			"likes" : 100
	}
	以上实例中类似于 WHERE 语句:WHERE by='菜鸟教程' AND title='MongoDB 教程'
	
v、	返回指定的字段: db.collection_name.find({},{_id:0, key1:1, key2:1...})  其中1代表输出内容,0则反之
		      db.collection_name.find({},{key1:0, key2:0...}) 不输出key1,key2...,其它都输出

9、
10、 Limit() 方法(读取指定数量的数据): db.collection_name.find({}).limit(number)
11、 Skip() 方法(跳过指定数量的数据):db.collection_name.find({}).limit(number).skip(number)
12、 sort() 在 MongoDB 中使用 sort() 方法对数据进行排序,sort() 方法可以通过参数指定排序的字段,
并使用 1 和 -1 来指定排序的方式,其中 1 为升序排列,而 -1 是用于降序排列。
db.collection_name.find({}).sort()
13、 count() 方法,统计文档总数
14、 aggregate() 方法,
db.test.aggregate([{KaTeX parse error: Expected '}', got 'EOF' at end of input: group: {_id:"certificate_id", count: {KaTeX parse error: Expected 'EOF', got '}' at position 7: sum: 1}̲}}]) db.test.a…certificate_id", count: { $sum: 1 } })
相当于: select certificate_id, count(*) from table_name group by certificate_id

Linux执行MongoDB
1.mongod : 执行程序
2.mongo : 用于连接客户端
3.mongoimport/mongoexport : 导入/导出
4.mongodump/mongorestore : 备份/恢复数据(二进制文件,不能被直接读取,一般用来做数据的备份)
5.mongooplog : 用来操作日志的回放
oplog : MongoDB复制集中用来记录操作记录的数据集合
6.mongostat : 用来查看mongo服务器的各种状态
scons all -j 12(编译,12是指CPU的核数)

mongod是主角,数据库执行程序

mongo 用来连接服务器的客户端
mongoimport mongoexport 导入到处
mongodump mongorestore 二进制北非回复
mongostat 查看服务器状态
mongoDB编译:进入源码目录,执行scons all进行编译。scons all -j 10 使用-j参数可以指定cpu的核数。
编译后的文件:
mongod:mongodb的启动文件,用来部署数据库
mongo:链接服务器的客户端
mongoimport,mongoexport:用来导入导出数据库
mongodump,mongorestore:用来导入导出二进制数据,一般用来数据的备份与恢复。
mongologoplog 操作日志
mongostat:用来查看mongodb服务器的各种状态

启动
./bin/mongod找到bin目录下的mongod启动mongodb数据库,–dbpath指定存放数据文件的路径
./bin/mongod --dbpath ……

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值