zoukankan      html  css  js  c++  java
  • 《MongoDB权威指南》读书笔记 第四章 查询

       查询是我们在使用数据库过程中使用最频繁的操作,掌握查询的技巧是每个合格程序员必备的素质,下面来学习一下mongodb的查询。

       一、find简介

       查询就是返回被查询集合的子集,子集的范围从0个到整个集合,find的第一个参数为查询条件,如果不设置条件则返回整个文档。

       例:db.c.find()

         db.c.find({'age':27})

             db.c.find({'age':27, 'name':'leon'}) #and 条件,意思是age为27且name为leon

         1、指定返回值  

          find函数的第二个参数用来设定返回字段,通过过滤不必要的字段,可以节省传输数据量及客户端解码文档的时间和内存消耗.

          例:db.user.find({}, {"username":1, "email":1}) 

           上面将会返回三个字段:_id, username, email

           _id是默认返回的,要显式过滤某字段可以把1改为0

          2、限制

          数据库所关心的查询文档的值必须是常量

    二、查询条件

         1、$lt 、$lte 、$gt、  $gte

         $lt 、$lte 、$gt、  $gte 、$ne分别对应 <、<=、>、>=、!=

         例如,查询在18~30岁的用户

         db.users.find({"age":{"$gte":18, "$lte":30}})

         查义2007/1/1日前注册的人,

         start = new Date("01/01/2007")

         db.users.find({"registered":{"$lt":start}})

          

         2、OR查询

         两种方式进行OR查询。

         $in 查询一个键的多个值,与之对应的是$nin

         例:db.raffle.find({'ticket_no':{"$in":[725, 542, 390]}})

         $in只能对单个键做OR查询,多键查询要用$or.

         db.raffle.find({'$or':[{'ticket_no':75},{'winner':true}]})

         3、$not

         "$not"是元条件句,即可以用在任何其他条件之上。

         $mod 会将查询的值除以第一个给定值,若余数等于第二个给定值则返回该结果.

         4、条件句的规则

         条件句是内层文档的键,而修改器则是外层文档的键。

  • 相关阅读:
    Elasticsearch学习之基本核心概念
    Kudu,支持快速分析的新型Hadoop存储系统
    npm命令
    git相关命令
    Linux下Nodejs安装(完整详细)转
    数据库删除discuz 部分数据操作
    用tcping检查网站开放的端口
    Mybatis各种模糊查询
    抱歉,当前存在网络问题或服务器繁忙错误代码:20003问题解决方法
    win7下python2.7安装 pip,setuptools的正确方法
  • 原文地址:https://www.cnblogs.com/bjdxy/p/2781898.html
Copyright © 2011-2022 走看看