美文网首页
六、MongoDB中的操作符

六、MongoDB中的操作符

作者: 转身丶即天涯 | 来源:发表于2021-10-22 10:11 被阅读0次

前言

本篇博客会记录MongoDB中所有操作符相关的信息,以备后续查询之需。
对于比较简单的操作符,仅做记录,不做详细解释。

当前使用MongoDB文档版本为4.4,地址:MongoDB官方文档

MongoDB操作符

查询操作符

比较查询操作符(Comparison Query Operators)

  • $eq: 等于
  • $ne: 不等于
  • $gt: 大于
  • $gte: 大于等于
  • $lt: 小于
  • $lte: 小于等于
  • $in: 在列表
  • $nin: 不在列表

逻辑查询操作符(Logical Query Operators)

  • $and: 与
  • $or: 或
  • $not: 非
  • $nor: 与任何一个条件都不匹配

元素查询操作符(Element Query Operators)

  • $exists: 匹配文档中的某个字段是否存在
  • $type:选择某个字段为某种特定类型的文档

评估查询操作符(Evaluation Query Operators)

  • $expr: 允许在查询中使用聚合函数
  • $jsonSchema: 校验文档是否与给定的JSON格式一致
  • $mod: 对数值类型字段进行取模运算
  • $regex: 通过正则表达式筛选文档
  • $text: 执行文本搜索
  • $where: 通过JavaScript表达式匹配文档

地理空间查询操作符(Geospatial Query Operators)

  • $geoIntersects:
  • $geoWithin:
  • $near:
  • $nearSphere:
  • $box:
  • $center:
  • $centerSphere:
  • $geometry:
  • $maxDistance:
  • $minDistance:
  • $polygon:
  • $uniqueDocs:
    不了解,先不总结。具体可看官网地理空间查询操作符

数组查询操作符(Array Query Operators)

  • $all: 判断所有元素是否都满足指定的查询条件
  • $elemMatch: 遍历数组中的每个元素,如果元素的字段匹配所有的条件
  • $size: 筛选数组长度为size的文档

按位查询操作符(Bitwise Query Operators)

  • $bitsAllClear:
  • $bitsAllSet:
  • $bitsAnyClear:
  • $bitsAnySet:

不了解,先不总结。

投影操作符(Projection Operators)

  • $(projection): 查看数组中第一个符合条件的元素
  • elemMatch(projection): 和数组操作符中的elemMatch等效
  • $slice(projection): 指定查询结果的元素的数量

其他查询操作符(Miscellaneous Query Operators)

  • $comment: 添加一个注释作为查询谓语
  • $rand: 随机生成一个0到1之间的浮点数

更新操作符(Update Operators)

字段更新操作符(Field Update Operators)

  • $currentDate: 设置字段的值为当前日期
  • $inc: 在字段的值基础上自增,增量可以指定
  • $min: 仅更新此字段的值小于给定值的字段
  • $max: 仅更新此字段的值大于给定值的字段
  • $mul: 将此字段的值乘以一个给定的数值
  • $rename: 重命名一个字段
  • $set: 设置文档中字段的值
  • $setOnInsert: 在insert时,可以为新文档扩展更多field
  • $unset: 从文档中删除一个字段

数组更新操作符(Array Update Operators)

  • $: 作为更新数组时符合查询条件的第一个元素的占位符
  • $[]: 作为更新数组时符合条件的全部元素的占位符
  • $[<identifier>]: 作为更新数组时所有条件都满足arrayFilters的全部元素的占位符
  • $addToSet: 仅当元素不存在时添加元素到数组
  • $pop: 删除第一个或者最后一个元素
  • $pull: 删除数组中所有符合查询条件的元素
  • $push: 添加一个元素到数组
  • $pullAll: 删除数组中所有元素
  • each: 在使用push和$addToSet操作符时,添加多个元素
  • position: 在使用push操作符时,在指定位置添加元素
  • slice: 在使用push操作符时,限制所更新数组的大小
  • sort: 在使用push操作符时,对数组中的元素重新排序

按位更新操作符(Bitwise Update Operator)

  • $bit: 执行按位与、或、异或更新整数

聚合管道阶段(Aggregatioin Pipeline Stages)

未完待续Aggregation Pipeline Stages

相关文章

网友评论

      本文标题:六、MongoDB中的操作符

      本文链接:https://www.haomeiwen.com/subject/bgzfaltx.html