0:基本命令:
1,登录mongodb数据库
mongo

2,查看数据库,选择数据库
show dbs;
use table1;

3,查看集合
show collections;

4,查看集合所有数据
db.集合名字.find();
例如:
db.active.find();

5,待条件查询: 例如:查看集合某一天的数据
db.active.find({cd:20160425});
查看某一IP的数据
db.active.find({ip:"172.18.1.146"});
查看某一天的,某个IP的数据
db.active.find({cd:20160425,ip:"172.18.1.146"});

6,向active集合插入数据(自己修改IP,日期,appid)

db.active.save({cid:"xxx",ct:1460972029.91,ip:"59.151.116.79",appid:"392901672",xxx:"gjsjder5sdwetgjkgndf",cd:20160425,mac:""});

7,sendclick的操作类似

db.active.remove({cd:20160510})
db.active.update({cd:20160520},{$set:{ct:1460972029.92}},false,true);

第三个参数的意思是,如果不存在update的记录,是否插入,默认是false,不插入。
第四个参数:默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新

8,查询指定列的数据

db.userInfo.find({}, {name: 1, age: 1});

9,查询5-10条之间的数据

db.user.find().limit(10).skip(5)

10,mogodb的查询功能确实比标准的sql强大很多,特别是各种修改器和基于js函数的$where查询。(什么意思)

11,"$in" :是否在某一个集合的查询

db.user.find({"age":{"$in":[17,18,19]}})

12,MongoDB中的bson介绍
BSON是一种类似json的一种二进制形式的存储格式,简称Binary JSON,它和JSON一样,支持内嵌的文档对象和数组对象,但是BSON有JSON没有的一些数据类型,如Date和BinData类型。它的优点是灵活性高,但它的缺点是空间利用率不是很理想。

13,$where查询
mongodb的$where查询非常强大,用它可以执行JavaScript作为查询的一部分。这使得查询几乎可以做任何事情。
基本样式如下:
db.myMongodb.find({$where : function() {}})
如果function返回true,该记录就返回。否则就不返回。
例子1:查询cid等于xxx的记录

db.active.find({$where:function(){
for(var current in this){
if(this[current] == 'xxx'){
return true;
}
}
return false;
}
})

例子2:查询在一条记录中,有2个不同字段但值相同的记录。

db.foo.find({$where:function(){
for(var current in this){
for(var other in this){
if(current != other && this[current] == this[other]){
return true;
}
}
}
return false;
}})

注意:不是必要时,一定不要用$where做查询。因为它在速度上比常规查询慢很多。每个文档都要从BSON转换成JavaScript对象,然后通过$where表达式来运行。而且还不能使用索引。另一种复杂的查询就是MapReduce,会在第2节介绍。

mongodb学习1---基本命令的更多相关文章

  1. MongoDB学习笔记--基本命令

    转自:http://www.cnblogs.com/xusir/archive/2012/12/24/2830957.html 数据库文件默认位置 /var/lib/mongodb 成功启动Mongo ...

  2. MongoDB学习笔记系列

    回到占占推荐博客索引 该来的总会来的,Ef,Redis,MVC甚至Sqlserver都有了自己的系列,MongoDB没有理由不去整理一下,这个系列都是平时在项目开发时总结出来的,希望可以为各位一些帮助 ...

  3. MongoDB学习笔记—Linux下搭建MongoDB环境

    1.MongoDB简单说明 a MongoDB是由C++语言编写的一个基于分布式文件存储的开源数据库系统,它的目的在于为WEB应用提供可扩展的高性能数据存储解决方案. b MongoDB是一个介于关系 ...

  4. Mongodb学习笔记一(Mongodb环境配置)

    Mongodb学习 说明: MongoDB由databases组成,database由collections组成,collection由documents组成,document由fileds组成.Mo ...

  5. MongoDB学习记录

    一.操作符 "$lt" :"<""$lte" :"<=""$gt" :"> ...

  6. PHP操作MongoDB学习笔记

    <?php/*** PHP操作MongoDB学习笔记*///*************************//**   连接MongoDB数据库  **////*************** ...

  7. MongoDB学习:(二)MongoDB简单使用

    MongoDB学习:(二)MongoDB简单使用 MongoDB使用: 执行mongodb的操作之前,我们需要运行命令,来进入操作命令界面 >mongo 提示该错误,说明我们系统缺少一个补丁,该 ...

  8. MongoDB学习:(一)MongoDB安装

    MongoDB学习:(一)MongoDB安装 MongoDB介绍:     直接百科了: MongoDB安装: 1:下载安装: MongoDB安装:https://www.mongodb.com/do ...

  9. MongoDB学习(四)客户端工具备份数据库

    在上一篇MongoDB学习(三)中讲解了如何在服务器端进行数据的导入导出与备份恢复,本篇介绍下如何利用客户端工具来进行远程服务器的数据备份到本地. 以客户端工具MongoVUE为例来进行讲解: 1.首 ...

  10. mongodb学习(1) 第一次开启 mongdb

    1.启动mongdb 可以设置为开机启动 mongod -dbpath=/data/mongodb --fork --port 27017 --logpath=/usr/local/mongodb/l ...

随机推荐

  1. 常用SQL语句备忘录

    1.---表中有重复记录用SQL语句查询出来 select * from Recharge where RechargeSerial in (select RechargeSerial from Re ...

  2. c++ 访问者模式(visitor pattern)

    概述: 我们去银行柜台办业务,一般情况下会开几个个人业务柜台的,你去其中任何一个柜台办理都是可以的.我们的访问者模式可以很好付诸在这个场景中:对于银行柜 台来说,他们是不用变化的,就是说今天和明天提供 ...

  3. 随手写的自动批量编译部署NativeAndroid程序Python脚本

    背景 有一堆工程NativeAndroid程序,要一一编译部署编译测试,手头只有AndroidManifest和Makefile,需要一个个Update,Ndk-build,和发包安装测试,很是头疼, ...

  4. 使用UIKit制作卡牌游戏(二)ios游戏篇

    转自朋友Tommy 的翻译,自己只翻译了第三篇教程. 译者: Tommy | 原文作者: Matthijs Hollemans写于2012/07/06 原文地址: http://www.raywend ...

  5. raphael绘制矢量图2

    最近重新再次考虑了下raphael,也没办法把公司的项目给换成raphael的渲染了.大体上的效果稍微考了下其实并不难实现,难点大多集中在对路线以及子路线和方案的转换,以及位置的确定,几乎每操作一步都 ...

  6. 推荐一款炫酷的提示框插件SweetAlert

    官方网址 http://t4t5.github.io/sweetalert/ 项目地址 https://github.com/t4t5/sweetalert

  7. 在redhat上搭建redmine

    搞个项目管理的东西 找了下还是redmine比较合适,行动action: 1.ruby 额 是的你没有看错 需要先安装一个ruby的环境.话说这个安装起来很是纠结,本来想用yum 结果咩有成功,于是乎 ...

  8. UML系列04之 UML时序图

    概要 本章对UML的时序图进行介绍,主要内容包括:时序图介绍时序图组成 转载请注明出处:http://www.cnblogs.com/skywang12345/p/3523355.html 时序图介绍 ...

  9. 使用命令行备份指定文件夹并保留最新N份

    客户需要对网站进行定期备份,并保留最近30天的文件,编写后以下脚本,通过Windows的任务计划进行调度 对比手工和任务计划调度运行情况来看,手工运行中可直接调用RAR.exe和网络进行传输,但是任务 ...

  10. [Node.js] Promise,Q及Async

    原文地址:http://www.moye.me/2014/12/27/promise_q_async/ 引子 在使用Node/JS编程的时候,经常会遇到这样的问题:有一连串的异步方法,需要按顺序执行, ...