比较操作符
$eq : =    写法:db.class0.find({age:{$eq:18}},{name:1,_id:0}); 查找年龄等于18
$lt :<
$lte : <=
$gt : >   db.class0.find({age:{$gt:17,$lt:20}},{name:1,_id:0}); 查找大于17且小于20
$gte: >=
$ne : !=
$in : 包含    db.class0.find({age:{$in:[17,19]}},{name:1,_id:0}); 查找17和19的年龄
$nin: 不包含

逻辑操作符:
$and 逻辑与
 1. 在query如果写多个条件默认即为and关系
  db.class0.find({age:{$lt:18},sex:{$eq:"w"}},{_id:0});
 2.逻辑与$and
  db.class0.find({$and:[{age:{$lt:18}},{sex:"w"}]},{});
$or 逻辑或
 查找年龄小于17或大于19的数据
  db.class0.find({$or:[{age:{$lt:17}},{age:{$gt:19}}]},{});
$not 逻辑非
 查找性别不为男的
  db.class0.find({sex:{$not:{$eq:"m"}}},{});
$nor 既不也不
 姓别既不能是男,年龄也不小于18
  db.class0.find({$nor:[{sex:{$eq:"m"}},{age:{$lt:18}}]},{});
$all 查找数组同时包含多项文档
 查找同时包含49, 67的文档
  db.class1.find({score:{$all:[49,67]}},{_id:0})
$size 通过数组个数来进行查找
 查找分数域中的文档个数为2
  db.class1.find({score:{$size:2}},{_id:0})
$slice 跳过第n个,显示m个
 显示m个
  db.class1.find({},{_id:0,score:{$slice:m}})
 跳过第n个,显示m个
  db.class1.find({},{_id:0,score:{$slice:[n,m]}}) 
$exists 通过某个域是否存在筛选
 查找sex域不存在的文档
  db.class1.find({sex:{$exists:false}},{_id:0})
$mod 余数查找
 找出年龄为双数的文档
  db.class1.find({age:{$mod:[2,0]}})
$type 找出指定数据类型的文档
 找出age域值类型为1的文档
  db.class1.find({age:{$type:1}},{_id:0})

query更多的筛选用法的更多相关文章

  1. jQuery children等筛选用法

    jQuery children等筛选用法: <%@ page language="java" import="java.util.*" pageEncod ...

  2. Query Profiler 和Explain 用法详解

    一.Query Profiler  MySQL 的Query Profiler 是一个使用非常方便的Query 诊断分析工具,通过该工具可以获取一条Query 在整个执行过程中多种资源的消耗情况,如C ...

  3. jquery.query.js 插件的用法

    转载自:http://www.cnblogs.com/dachie/archive/2010/09/16/1827840.html 代码如下: var url = location.search; & ...

  4. MongoDB——理论及使用命令详解 数据库

    数据存储阶段 文件管理阶段(.txt  .doc .xls) 优点: 1 使用简单,展现直观 2 可以长期保存数据 3 可存储数据量比较大 缺点: 1 查找不方便, 2 容易造成数据冗余, 3 格式不 ...

  5. Hibernate之HQL基本用法

    关于HQL HQL与SQL非常类似,只不过SQL的操作对象是数据表,列等对象,而HQL操作的是持久化类,实例,属性等. HQL是完全面向对象的查询语言,因此也具有面向对象的继承,多态等特性. 使用HQ ...

  6. pandas用法总结

    pandas用法总结 2018年06月07日 10:49:03 一夜了 阅读数 38705更多 分类专栏: 杂项   一.生成数据表 1.首先导入pandas库,一般都会用到numpy库,所以我们先导 ...

  7. [js开源组件开发]query组件,获取url参数和form表单json格式

    query组件,获取url参数和form表单json格式 距离上次的组件[js开源组件开发]ajax分页组件一转眼过去了近二十天,或许我一周一组件的承诺有了质疑声,但其实我一直在做,只是没人看到……, ...

  8. 第 8 章 MySQL 数据库 Query 的优化

      前言: 在之前“影响 MySQL 应用系统性能的相关因素”一章中我们就已经分析过了Query语句对数据库性能的影响非常大,所以本章将专门针对 MySQL 的 Query 语句的优化进行相应的分析. ...

  9. pandas用法大全

    pandas用法大全 一.生成数据表 1.首先导入pandas库,一般都会用到numpy库,所以我们先导入备用: import numpy as np import pandas as pd12 2. ...

随机推荐

  1. Deep Learning(4)

    四.拓展学习推荐 Deep Learning 经典阅读材料: The monograph or review paper Learning Deep Architectures for AI (Fou ...

  2. Red Hat Linux相关产品iso镜像下载

    Linux系统各发行版镜像下载(持续更新) http://www.linuxfly.org/post/659/ http://www.linuxidc.com/Linux/2007-09/7399.h ...

  3. NodeJS学习笔记六

    Symbol简介 ES6引入了一种新的原始数据类型Symbol,表示独一无二的值.它是JavaScript语言的第七种数据类型,前六种是:Undefined.Null.布尔值(Boolean).字符串 ...

  4. #C++初学记录(高精度运算)(加法)

    高精度运算 不管是int还是double亦或者long long ,这些定义变量都有数据范围的一定限制,在计算位数超过十几位的数,也就是超过他们自身的数据范围时,不能采用现有类型进行计算,只能自己通过 ...

  5. 文件下载—SSM框架文件下载

    1.准备上传下载的api组件 <dependency> <groupId>commons-io</groupId> <artifactId>common ...

  6. MyBatis—mybatis-config.xml配置介绍

    在定义sqlSessionFactory时需要指定MyBatis主配置文件: Xml代码   说明: 收藏代码 1.  <bean id="sqlSessionFactory" ...

  7. Ubuntu 系统下暴力卸载 MySQL

    一.概述 MySQL 出问题了,正常的 start.stop 不起作用. apt-get remove mysql-server apt-get remove mysql-client 上面这些命令不 ...

  8. 2017 ACM/ICPC Asia Regional Qingdao Online Solution

    A : Apple 题意:给出三个点,以及另一个点,求最后一个点是否在三个点的外接圆里面,如果在或者在边界上,输出“Rejected”,否则输出"Accepted" 思路:先求一个 ...

  9. jQuery源码分析--Event模块(3)

    最后剩下了事件的手动触发了.jQuery提供了两个函数trigger和triggerHandler来手动触发事件,可以触发原生事件和自定义的事件.这个触发不单只会触发有jQuery绑定事件,而且也会触 ...

  10. 0510进程 multiprocess模块

    process模块是一个创建进程的模块,借助这个模块,就可以完成进程的创建. 创建模块 import os import time from multiprocessing import Proces ...