query更多的筛选用法
比较操作符
$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更多的筛选用法的更多相关文章
- jQuery children等筛选用法
jQuery children等筛选用法: <%@ page language="java" import="java.util.*" pageEncod ...
- Query Profiler 和Explain 用法详解
一.Query Profiler MySQL 的Query Profiler 是一个使用非常方便的Query 诊断分析工具,通过该工具可以获取一条Query 在整个执行过程中多种资源的消耗情况,如C ...
- jquery.query.js 插件的用法
转载自:http://www.cnblogs.com/dachie/archive/2010/09/16/1827840.html 代码如下: var url = location.search; & ...
- MongoDB——理论及使用命令详解 数据库
数据存储阶段 文件管理阶段(.txt .doc .xls) 优点: 1 使用简单,展现直观 2 可以长期保存数据 3 可存储数据量比较大 缺点: 1 查找不方便, 2 容易造成数据冗余, 3 格式不 ...
- Hibernate之HQL基本用法
关于HQL HQL与SQL非常类似,只不过SQL的操作对象是数据表,列等对象,而HQL操作的是持久化类,实例,属性等. HQL是完全面向对象的查询语言,因此也具有面向对象的继承,多态等特性. 使用HQ ...
- pandas用法总结
pandas用法总结 2018年06月07日 10:49:03 一夜了 阅读数 38705更多 分类专栏: 杂项 一.生成数据表 1.首先导入pandas库,一般都会用到numpy库,所以我们先导 ...
- [js开源组件开发]query组件,获取url参数和form表单json格式
query组件,获取url参数和form表单json格式 距离上次的组件[js开源组件开发]ajax分页组件一转眼过去了近二十天,或许我一周一组件的承诺有了质疑声,但其实我一直在做,只是没人看到……, ...
- 第 8 章 MySQL 数据库 Query 的优化
前言: 在之前“影响 MySQL 应用系统性能的相关因素”一章中我们就已经分析过了Query语句对数据库性能的影响非常大,所以本章将专门针对 MySQL 的 Query 语句的优化进行相应的分析. ...
- pandas用法大全
pandas用法大全 一.生成数据表 1.首先导入pandas库,一般都会用到numpy库,所以我们先导入备用: import numpy as np import pandas as pd12 2. ...
随机推荐
- Deep Learning(4)
四.拓展学习推荐 Deep Learning 经典阅读材料: The monograph or review paper Learning Deep Architectures for AI (Fou ...
- Red Hat Linux相关产品iso镜像下载
Linux系统各发行版镜像下载(持续更新) http://www.linuxfly.org/post/659/ http://www.linuxidc.com/Linux/2007-09/7399.h ...
- NodeJS学习笔记六
Symbol简介 ES6引入了一种新的原始数据类型Symbol,表示独一无二的值.它是JavaScript语言的第七种数据类型,前六种是:Undefined.Null.布尔值(Boolean).字符串 ...
- #C++初学记录(高精度运算)(加法)
高精度运算 不管是int还是double亦或者long long ,这些定义变量都有数据范围的一定限制,在计算位数超过十几位的数,也就是超过他们自身的数据范围时,不能采用现有类型进行计算,只能自己通过 ...
- 文件下载—SSM框架文件下载
1.准备上传下载的api组件 <dependency> <groupId>commons-io</groupId> <artifactId>common ...
- MyBatis—mybatis-config.xml配置介绍
在定义sqlSessionFactory时需要指定MyBatis主配置文件: Xml代码 说明: 收藏代码 1. <bean id="sqlSessionFactory" ...
- Ubuntu 系统下暴力卸载 MySQL
一.概述 MySQL 出问题了,正常的 start.stop 不起作用. apt-get remove mysql-server apt-get remove mysql-client 上面这些命令不 ...
- 2017 ACM/ICPC Asia Regional Qingdao Online Solution
A : Apple 题意:给出三个点,以及另一个点,求最后一个点是否在三个点的外接圆里面,如果在或者在边界上,输出“Rejected”,否则输出"Accepted" 思路:先求一个 ...
- jQuery源码分析--Event模块(3)
最后剩下了事件的手动触发了.jQuery提供了两个函数trigger和triggerHandler来手动触发事件,可以触发原生事件和自定义的事件.这个触发不单只会触发有jQuery绑定事件,而且也会触 ...
- 0510进程 multiprocess模块
process模块是一个创建进程的模块,借助这个模块,就可以完成进程的创建. 创建模块 import os import time from multiprocessing import Proces ...