yangyang12138

导航

mongodb(二)

1.查询文档

  db.col.find().pretty()

条件

db.col.find({"name":"n", "age":"55"}).pretty()

带有and 和 or的查询

db.col.find({"s": "p", $or: [{"name": "n"},{"age": "22"}]}).pretty()

(>) 大于 - $gt
(<) 小于 - $lt
(>=) 大于等于 - $gte
(<= ) 小于等于 - $lte

db.col.find({age : {$gt : 100}})

 

也可以根据类型查询

db.col.find({"name" : {$type : 'string'}})

db.col.find({"name" : {$type : 'string'}}).limit(1).skip(1)

排序

db.col.find({"name" : {$type : 'string'}}).sort({'age':1})

2.聚合

  db.col.find().([{$group : {_id : "$name", num : {$sum : '$age'}}}])

  $sum 计算总和

  $avg 计算平均值
  $min 获取集合中所有文档对应值得最小值
  $max 获取集合中所有文档对应值得最大值
  $push 将值加入一个数组中,不会判断是否有重复的值。
  $addToSet 将值加入一个数组中,会判断是否有重复的值,若相同的值在数组中已经存在了,则不加入
  $first 根据资源文档的排序获取第一个文档数据
  $last 根据资源文档的排序获取最后一个文档数据

 

$project:修改输入文档的结构。可以用来重命名、增加或删除域,也可以用于创建计算结果以及嵌套文档。
$match:用于过滤数据,只输出符合条件的文档。$match使用MongoDB的标准查询操作。
$limit:用来限制MongoDB聚合管道返回的文档数。
$skip:在聚合管道中跳过指定数量的文档,并返回余下的文档。
$unwind:将文档中的某一个数组类型字段拆分成多条,每条包含数组中的一个值。
$group:将集合中的文档分组,可用于统计结果。
$sort:将输入文档排序后输出。
$geoNear:输出接近某一地理位置的有序文档。

posted on 2023-03-31 06:55  杨杨09265  阅读(9)  评论(0编辑  收藏  举报