MongDB 4.0 入门学习之运算符

基本语法:db.collection.find({<key>:{$symbol:<value>}})

条件查询匹配运算符

符号 描述 范例 js释义
$eq 等于 {qty:{$eq:2}} or {qty:2} qty===2
$gt 大于 {qty:{$gt:2}} qty>2
$gte 大于或等于 {qty:{$gte:2}} qty>=2
$lt 小于 {qty:{$lt:2}} qty<2
$lte 小于或等于 {qty:{$lte:2}} qty<=2
$ne 不等于 {qty:{$ne:2}} qty!=2
$in 查询等于指定数组中任何值的数据 {qty:{$in:[5,2,3]}} qty===5 || qty===2 || qty===3
$nin 查询不等于指定数组中任何值数据 {qty:{$nin:[5,2,3]}} qty!=5 || qty!=2 || qty!=3

逻辑运算符

  • $and 逻辑且

    • 语法: {$and:[{<expression1>}, {<expression2>}, ... ,{<expressionN>}]}
    • 范例: {$and:[{qty:{$ne:2}},{"name":{$eq:"测试"}}]}
    • 范例js释义: qty!=2 && "name"==="测试"
  • $not 逻辑非
    • 语法: {<key>:{$not:{<operator-expression>}}}
    • 范例: {price:{$not:{$gt:1.99}}}
    • 范例js释义: !(price>1.99)
  • $nor 逻辑非或
    • 语法: {$nor:[{<expression1>}, {<expression2>}, ...,{<expressionN>}]}
    • 范例: {$nor:[{price:1.99}, {sale:true}]}
    • 范例js释义: !(price===1.99||sale===true)
  • $or 逻辑或
    • 语法: {$or:[{<expression1>}, {<expression2>}, ...,{<expressionN>}]}
    • 范例: {$or:[qty:{$lt:20}}, {price:10}]}
    • 范例js释义: qty<20 || price===10

检测运算符

  • $exists 查询值是否存在

    • 语法: {<key>:{$exists:<boolean>}}
    • 范例: {qty:{$exists:true, $nin:[ 5, 15 ]}}
    • 范例js释义: qty && (qty!=5 || qty!=15)
  • $type 检测值的类型
    • 语法: {<key>:{$type:<BSON type>}}
    • 范例: {"zipCode":{$type:2}}} or {"zipCode":{$type:"string"}}}
    • 范例js释义: typeof "zipCode" === "string"
    • 数据类型请自行到官网文档查询 MongoDB Operator $type

MongDB4.0-入门学习之运算符的更多相关文章

  1. Json.Net6.0入门学习试水篇

    原文:Json.Net6.0入门学习试水篇 前言 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.简单地说,JSON 可以将 JavaScript 对象中 ...

  2. Bootstrap3.0入门学习系列

    Bootstrap3.0入门学习系列规划[持续更新]   前言 首先在此多谢博友们在前几篇博文当中给与的支持和鼓励,以及在回复中提出的问题.意见和看法. 在此先声明一下,之前在下小菜所有的随笔文章中, ...

  3. Bootstrap3.0入门学习系列教程

    可视化布局:http://www.runoob.com/try/bootstrap/layoutit/ 1.浏览器兼容性:你可以去看看大牛的一篇文章http://www.cnblogs.com/lhb ...

  4. 【数据售卖平台】—— Vue2.0入门学习项目爬坑

    前言:这个项目是我从零学习Vue2.0时用于练习基础知识的入门项目,包含了Vue2.0几乎所有项目都会用到的基础功能,是新手用来练手的好项目,这里温故知新对功能点做一个总结.github地址:http ...

  5. php之快速入门学习-7(运算符)

    PHP 运算符 本章节我们将讨论 PHP 中不同运算符的应用. 在 PHP 中,赋值运算符 = 用于给变量赋值. 在 PHP 中,算术运算符 + 用于把值加在一起. PHP 算术运算符 运算符 名称 ...

  6. ElasticSearch7.10.0入门学习

    ElasticSearch完成最关键的一个功能就是 大数据搜索 官网:https://www.elastic.co/cn/elasticsearch/ 简介 Elasticsearch 是一个分布式全 ...

  7. Bootstrap3.0入门学习系列规划[持续更新]

    详情请看http://aehyok.com/Blog/Detail/5.html 个人网站地址:aehyok.com QQ 技术群号:206058845,验证码为:aehyok 本文文章链接:http ...

  8. Protege5.0.0入门学习

    OWL本体的重要组成部分 Individuals:个体,代表一个领域里面的对象.可以理解成一个类的实例(instances of classes). Properties:属性,是两个个体之间的双重联 ...

  9. 《VC++ 6简明教程》即VC++ 6.0入门精讲 学习进度及笔记

    VC++6.0入门→精讲 2013.06.09,目前,每一章的“自测题”和“小结”三个板块还没有看(备注:第一章的“实验”已经看完). 2013.06.16 第三章的“实验”.“自测题”.“小结”和“ ...

随机推荐

  1. Java-javaFx库运用-自动弹跳的球

    (1)定义一个名为BallPane的类,用于显示一个弹动的球: (2)定义一个名为BounceBallControl的类,用来使用鼠标动作控制弹球,当鼠标按下的时候动画暂停,当鼠标释放的时候动画恢复执 ...

  2. elementui tree 节点过滤加载对应子节点

    /官网例子 <el-input placeholder="输入关键字进行过滤" v-model="filterText"> </el-inpu ...

  3. hexo next主题深度优化(八),微加速

    个人博客:https://mmmmmm.me 源码:https://github.com/dataiyangu/dataiyangu.github.io 通过不断地上网查资料,引用的js.css.图片 ...

  4. java-day12

    数据结构 常用的数据存储结构:栈,队列,数组,列表,红黑树. 栈:先进后出(入口和出口在用一侧) 队列:先进先出 数组: 查询快:因为数组的地址是连续的,通过数组的首地址找到数组中的元素. 增/删慢: ...

  5. haproxy Mycat集2---KeepAlived

    KA 配两台 MASTER,BACKUP节点 安装Keepalived 1.下载安装依赖包 yum install -y wget make gcc openssl-devel popt-devel ...

  6. asp.net Core 使用redis(StackExchange.Redis)

    原文:asp.net Core 使用redis(StackExchange.Redis) 一.添加配置(appsettings.json) "Redis": { "Def ...

  7. Docker学习のDocker和虚拟机

    最初听到Docker,是作为虚拟机来宣传的,但是它本质不是虚拟机 一.虚拟机 虚拟机(Virtual Machine)指通过软件模拟的具有完整硬件系统功能的.运行在一个完全隔离环境中的完整计算机系统. ...

  8. drools决策表的使用

    决策表我们在drools规则引擎初探里做了简单介绍,这里主要是介绍如何通过java代码来把这个excel文件和drools关联起来,如何使其达到我们想要的效果. 这里假设我们在resources目录下 ...

  9. Android开发 SeekBar开发记录

    前言 开发记录博客不是讲解使用博客,更多的是各种功能与点子的记录 基本使用 <SeekBar android:layout_width="match_parent" andr ...

  10. layui实现已知被选中的option,怎样渲染

    在项目中用到layui实现第几个option 实现,在select中渲染出需要展示的option 代码: $("#period option[value="+res.data.se ...