mango常用语句及学习

优点:
  • 文档结构的存储方式,能够更便捷的获取数据。
  • 对于一个层级式的数据结构来说,使用扁平式的,表状的结构来查询保存数据非常的困难。
  • 内置GridFS,支持大容量的存储。
  • GridFS是一个出色的分布式文件系统,支持海量的数据存储,满足对大数据集的快速范围查询。
  • 性能优越
  • 千万级别的文档对象,近10G的数据,对有索引的ID的查询 不会比mysql慢,而对非索引字段的查询,则是全面胜出。 mysql实际无法胜任大数据量下任意字段的查询,而mongodb的查询性能实在牛逼。写入性能同样很令人满意,同样写入百万级别的数据,mongodb基本10分钟以下可以解决。
缺点:
  • 不支持事务
  • 磁盘占用空间大

基本查询

倒序

db.iot_sendlog.find({}).sort({ "_id": -1 })

分组查询

https://blog.csdn.net/zhuocailing3390/article/details/122706432
1、单字段分组
db.niu_product.aggregate({"$group":{"_id":"$sn_id"}} )
2、多字段分组,比如对比sql:select userid,articleid from testgroup by userid,articleid
db.niu_product.aggregate({"$group":{"_id":{"sn":"$sn_id","eid":"$eid"}}})
3、条件匹配分组
$match表示匹配条件,在group前表示where,在后表示having,userid为分组字段
比如对比sql:select sn_id,eid from niu_product eid in("EIDBCFFVUZEPJFGC","EIDZ5U2QRT7VTK0G") group by sn_id,eid
db.niu_product.aggregate(
{"$match":{"eid":{"$in":["EIDBCFFVUZEPJFGC","EIDZ5U2QRT7VTK0G"]}}},
{"$group":{"_id":{"sn":"$sn_id","eid":"$eid"}}}
)

4、mongodb查询排序

在mongodb 中使用 sort() 方法对进行排序,sort()方法可以通过参数指定排序的字段,并且使用 1 或者 -1 来指定排序的方式, 其中 1 为升序排序, 而 –1 为降序排序。

db.getCollection("cloudCmd").find({}).sort({creatAt:-1})

db.getCollection("cloudCmd").find({}).sort({creatAt:-1})


 

posted @ 2023-06-07 20:08  昕夕caas  阅读(83)  评论(0)    收藏  举报