我与mongodb 二三事(4)

    知道了mongodb的简单的用法,不足以是您成为一个mongodb的高手,就像你去泡一个妞的时候,知道他的基本的情况,确实不能是你彻底的搞掂。 

    如是,在今天这一节中,我们要学习mongodb的一些的高级的运用,例如,游标,多条件查询等等。

    一、查询  

   (1)单条件查询

           查询年龄等于70的人的基本情况

           相应的sql的语句为: db.user.find({"age":70});

           

          查询姓名等于zhangshan的人的基本情况

           相应的sql语句为:   db.user.find({"username":"zhangshan"});

        查询姓名等于zhangshan 而且年龄等于70的基本情况

         相应的sql语句为:db.user.find({"username":"zhangshan","age":70});

       (2)返回指定的列

        查询的年龄和姓名的情况

        相应的sql语句为:  db.user.find({},{"username":1,"age":1,"_id":0});

         (3) 多条件查询

           查询年龄大于25小于70的情况

            相应的sql的语句为:db.user.find({"age":{"$gt":25,"$lt":70}});

       查询姓名不等于  joe的数据的基本情况

      相应的sql的语句为 db.user.find({"username":{"$ne":"joe"}});

      

查询年龄等于45或者25或者70的基本情况

    相应的sql语句为: db.user.find({"age":{"$in":[27,45,70]}});

    或者:

     相应的sql语句为: db.user.find({"$or":[{"age":27},{"age":"45"},{"age":70}]}); 

   二、游标极其运用

   (1) 通过游标来遍历相应的每行的年龄

     相应的sql语句为 users.forEach(function(x){

... print(x.age);
... });
 

或者相应sql 语句为:

> while(users.hasNext()){
... print(users.next().age);
... }

    通过以上 学习,对mongodb  已经达到了查询和游标 驾轻就熟的地步了

时间: 2024-09-18 10:34:11

我与mongodb 二三事(4)的相关文章

我与mongodb 二三事(5)

 经过四则文章的学习了,你是真正的mongodb的高手吗? 你能对她真正的运用自如吗?    那我问你几个问题好不好,一 怎么使用一下  $where 来设置访问的条件,二   怎么使用skip,limit 这样子的关键字来限制的条件.     打不上来,嘻嘻,还称是高手,简直令人笑掉了大牙.  但是无知不可怕,可怕是无知了不努力学习.     在这节中就重点学习$where 和 skiP ,limit 等关键字使用,不断的学习,想高手不断的迈进.         一.  首先讨论$where

我与mongodb 二三事(6)

      学过rdbms的sql语句, 都知道函数的使用,大大提高了开发的效率吧!!!         那nosql数据库中是否还有这些函数,答案是肯定的.        在这节中,我们将一起学习这些函数,从而,来体会他所带来的便利.         在nosql中有这样子的一个场景,我要计算foo的记录的总条数.           如果,不用聚合函数,他的聚合的函数应该是这样的.           相应的sql语句是这样的.               var foos=db.foo.f

我与mongodb 二三事(3)

   经过了我与mongodb这个美女两次若即若离的约会以后,我发现是时候向他表白.  并且能够成为他生命中最了解的他的任.并且能够按时陪她吃.喝.玩.乐,陪她开心,陪她 悲哀.  而换成我对mongodb 以后,就是简单的c(创建).r(查).u(更新).d(删除),陪她 储存数据,陪她更新数据,陪她删除数据.                   首先,这mongodb的sql语言 形如db.user................                    增加例db.user.

我与mongodb 二三事(2)

 上节,我们对mongodb这个可爱的美女有了一个大致的了解,这些是远远不够的.就像你想追求一个女孩子,只知道他的大致概况,一定是不够的.   如果要搞掂她,那么就要对她有一个全方位的了解.这何尝又不像打仗,知己知彼,百战不殆.   因此,从这节开始,我们就真正的踏上了mongodb的学习之旅.   对于一个美女了解,你应该了解他的出身背景,他的家庭环境,对于mongodb 有何尝不是这样了.     于是,我们这里先介绍他的安装及运行.           第一步:下载安装包:官方下载地址←单

黑客二三事:熊猫烧香其实不入流

 本文讲的是 :  黑客二三事:熊猫烧香其实不入流  ,  [IT168 评论]随着李俊二度入狱的消息传来,这个沉寂多年的名字以一种颇具娱乐意味的姿态再度出现,同时随着各种泄露事件和棱镜门的不断升级,黑客和网络安全相关的一系列话题再度登上了话题榜. 360带动了杀毒软件免费潮后,没用再出现类似熊猫烧香的大规模破坏性病毒,互联网世界似乎干净了许多,甚至杀毒软件们开始使用检查软件升级.计算开机时间等方式来寻找一些存在感. 不过"圈里人"看来,网络威胁只是换了一种形式存在,公众的眼界外,存在

IOS有关内存管理的二三事

IOS有关内存管理的二三事 一.前引 随着移动设备的内存越来越大,程序员也已经度过了为了那一两M的内存在系统的抽丝剥茧的年代,对于JAVA的开发者,对内存更是伸手即取,并且从不关心什么时候还回去.但是,程序的掌控度对程序员来说是至关重要的,任何语言的内存管理机制的初衷也是在有限的空间里完成最精致的逻辑. 二.Xcode工程设置ARC ARC是xcode5中引入的自动引用计数,其原理与MRC是一样,只是系统帮助我们添加了retain和release.现在在xcode中新建的项目默认都是ARC的环境

DuplexPipe二三事(五)——来自内网的呼唤

穿越防火墙 你是否曾经尝试过去连接一台远程计算机,却因为被防火墙拦截或路由器没有转发而造成无法通信?这是主动式连接的一个弊端:它依赖服务器的状态,而对服务器有生杀大权的只有管理员.如果能让服务器主动尝试连接我们的计算机,那就没问题了!因为防火墙.路由等一般不会过滤向外的连接(反弹式木马就是利用这一原理). 但以往的服务端程序都是采用监听本地端口的方式(比如 Windows 远程桌面程序监听本地 3389 端口),我们需要将它的连接方式改成主动连接外部网络的方式.我想你也一定要将想到(如果你看过<

DuplexPipe二三事(四)——网络连接方式随心换

连接方式 在<DuplexPipe二三事(一)>中提到建立连接有两种方式:监听本地端口,等待其他程序来连接(以下简称"监听方式"):或者主动连接其他程序(以下简称"连接方式").排列组合一下,会得到三种结果:监听-连接.监听-监听.连接-连接.其中只有"监听-连接"方式能正确地建立连接,<DuplexPipe二三事(三)>中介绍的 FPipe 只是在其中添加了一节"监听-连接-监听-连接",其中粗体部分

DuplexPipe二三事(三)——网络中转站:端口映射

端口映射 在<DuplexPipe二三事(二)>中介绍了瑞士军刀 nc 的用法:nc 就像给程序一张飞机票,让原本只能在本地执行的程序也能运行在网络上!但网络和现实交通一样,很多地方需要中转才能到达(比如外网计算机无法直接访问公司内部 Web 服务器). 为实现公网对内部网络的访问,需要对数据进行转发(即端口映射).比如内网"主机A"开启了 Web(port 80)服务,需要在"服务器的网关"上设置:凡来自 Internet 上对 80 端口的请求,全部