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 ……

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值