MongoDB学习笔记(八)——操作汇总运算符、修饰符、聚合管道

上一篇我列举了MongoDB shell的所有的方法,该篇我将列举MongoDB的更新、查询等的所有操作符、管道聚合操作、管道聚合阶段、查询修饰语等。用作以后大家在使用MongoDB或学习MongoDB时可以使用该篇博文做个集中查阅的文章。

查询和映射操作(Query and Projection Operators)

原文链接
网上找到一个比较详细的与sql操作对比的文档。链接

查询选择器

比较查询运算符

名称 描述 格式
$eq 匹配指定的两个值是否相等, {field: { $eq: value} }
$gt 匹配字段值比指定值大的文档 {field: { $gt: value} }
$gte 匹配字段值比指定值大与等于的文档 {field: { $gte: value} }
$in 字段值匹配到数组中指定的任何值的文档 { field: { $in: [value1, value2, … valueN ] } }
$lt 匹配字段值小于指定值的文档。 {field: { $lt: value} }
$lte 匹配字段值小于或等于指定值的文档。 {field: { $lte: value} }
$ne 匹配字段值不等于指定值或不包该字段的文档。 {field: { $ne: value} }
$nin 匹配字段值不在指定数组中或不包该字段的文档 {field: { $nin: value} }

逻辑查询运算符

名称 描述 格式
$and 返回与两个查询子句都匹配的文档 { $and:[{expression1}, {expression2}, … ,{expressionN} ] }
$not 返回与查询表达式不匹配的文档 { field: { $not: { operator-expression} } }
$nor 返回两个查询子句都不匹配的文档 { $nor: [{expression1}, {expression2}, … {expressionN} ] }
$or 返回与任意一个查询子句匹配的文档 { $or: [{expression1}, {expression2}, … {expressionN} ] }

元素查询运算符

名称 描述 格式
$exists 匹配具有指定字段的文档 { field: { $exists: boolean} }
$type 匹配指定字段为指定BSON类型的文档 { field: { $type: BSON type } }

评估查询运算符

名称 描述 格式
$expr 允许在查询语言中使用聚合表达式。 { $expr: { expression} }
$jsonSchema 匹配符合与给定的json纲要的文档。 { $jsonSchema: schema}
$mod 对执行执行求模运算,并返回结果为指定值的文档,求模运算条件时使用数组指定的,其中第一个数字为除数,第二个数字时余数。 { field: { $mod: [ divisor, remainder ] } }
$regex 返回指定字段值与正则表达式匹配的文档 { field: /pattern/options }
$text 文本对带有文本索引的字段内容执行文本搜索 { $text:{ $search:string, $language: string, $caseSensitive: boolean, $diacriticSensitive: boolean }}
$where 匹配满足javascript表达式的文档。 { $where: function() { return …;} }

地理空间查询运算符(该篇建议大家查看源文档说明,翻译的感觉有误差)

名称 描述
$geoIntersect 选择与GeoJSON几何相交的几何图形。2dsphere索引支持$geoIntersects。
$geoWithin 选择具有完全位于指定形状内的地理空间数据的文档
$near 指定一个能将文档从最近到最远形式返回的地理空间查询的点。该运算符可以指定一个GeoJSON点或遗留坐标点。
$nearSphere 指定一个能将文档从最近到最远形式返回的地理空间查询的点。mongodb使用球面几何计算出$nearSphere的距离。
$box 使用遗留坐标对指定一个矩形框,用于$geoWithin查询。2d索引支持$box。
$center 当$geoWithin使用平面几何查询时,使用遗留坐标指定一个圆。 2d索引支持$center。
$centerSphere 当使用球面几何时,使用遗留坐标对或者使用GeoJson格式的$geoWithin查询指定一个圆。2dsphere和2d索引支持$center。
$geometry 指定一个基于GeoJSON格式的地理空间查询操作的几合。
$maxDistance 指定一个最大的距离来限制$near和$nearSphere的查询结果,2dsphere和2d索引支持$maxDistance。
$minDistance 指定一个最大的距离来限制$near和$nearSphere的查询结果,仅限2dsphere索引支持
$polygon 为$geoWithin查询使用遗留坐标对指定一个多边形。2d索引支持$polygon。
$uniqueDocs 不建议使用,改变一个$geoWithin和$near查询来确保即使一个文档匹配多次,也只返回一次。

数组查询运算符

名称 描述 格式
$all 匹配文档的一个字段值是包含所有指定元素的数组的文档 {field: { $all: [ value1, value2…] } }
$elem
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值