MongoDB入门学习3 - 查询总结

1,SQL语句中Where条件处理

1.1,基本查询

  • 全集合查询
    find([{文档条件}])

  • 查询第一个
    findOne([{文档条件}])

  • 将查询结果格式化展示
    pretty()
    例如:db.<collection>.find().pretty()

1.2,比较运算符

  • 默认判断,无运算符
$lt:little,小于 <
$lte:little or equals,小于等于 <=
$gt:granter,大于 >
$gte:granter or equals,大于等于 >=
  • 例如,查询名称为jerry的学生
    db.student.find({name:”jerry”})

  • 例如,查询年龄已经适婚年龄的学员
    db.student.find({age:{$gte:20}})

1.3,逻辑运算符

  • 逻辑与:并且运算,默认操作,无运算符

  • 逻辑或:或者运算,$or

  • 例如,查询年龄已经适婚年龄并且性别为女的学员
    db.student.find({age:{$gte:20}, gender:”女”})

  • 例如,查询年龄大于18或者性别为男的学员
    db.student.find({$or:[{age:{$gt:18}, {gender:”女”}]})

1.4,范围运算符

  • 判断指定条件在范围内或范围外
$in:判断指定条件是否包含在某个范围内
$nin:判断指定条件是否不包含在某个范围内
  • 例如,查询年龄在18或者20的学员
    db.student.find({age: {$in:[18,20]}})

  • 例如,查询年龄不是18 的学员
    db.student.find({age: {$nin : [20]}})

2,查询结果集的处理

2.1,限制查询条数

  • limit()限制查询条数
    db.<collection>.<find()>.limit(count)

2.2,排序

  • sort()对结果排序后返回
    db.<collection>.<find>.sort({字段:1/-1, …})

  • 1表示升序排列

  • -1表示降序排列,可以指定多个字段

  • 例如,按照name升序返回
    db.student.find().sort({name:1})

2.3,统计

  • 两种操作方式

  • 1)查询结果,通过count()统计数据
    db.<collection>.<find>.count()

  • 2)通过count()直接添加条件统计数据
    db.<collection>.count({条件})

2.4,去重

  • 通过distinct()对查询结果去重
    db.<collection>.distinct(“去重域名称”, {条件})

  • 例如,查询数据列表中,所有的年龄分布情况
    db.student.distinct(“age”, {})

2.5,分页

  • 隔n个数据查询m个数据
    db.hero.find().pretty().limit(m).skip(n)

3,参考网址

    原文作者:红薯爱帅
    原文地址: https://www.jianshu.com/p/1610f495b8a7
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞