[整理]MongoDB 经常使用命令总结
MongoDB 经常使用命令总结
在查询结果中指定显示或者不显示某个字段
比如,我们希望在 lessons 集合中查找全部数据,可是不希望在返回结果中包括 slides 字段;由于 slides 是一个巨长的以 base64 表示的图片数组。影响查询结果的阅读。
那么我们就能够在 query object 后面跟上一个參数。例如以下:
db.lessons.find({}, {slides:0});
相同也能够明白指定显示哪些字段:
db.bios.find( { }, { name: 1, contribs: 1, _id: 0 } )
比較操作 – 大于和小于
我们要查询时间范围在 startTime 和 endTime 间的数据记录,同一时候要求 Content 内容是数字 1 到 5。
db.wemessages.find( {$and: [ { CreateTime: {$gt: (startTime.getTime()/1000).toString()} }, { CreateTime: {$lt: (endTime.getTime()/1000).toString()} }, { Content: {$in: ['1','2','3','4','5']} } ]} );
这里我们使用了 $and 逻辑操作符。和 $gt, $lt, $in 比較操作符。
有关 MongoDB 的操作符,參见:http://docs.mongodb.org/manual/reference/operator/query/
更新一条记录的某些属性
使用 $set 表示仅仅更新指定的字段。而不改动其它字段,我们普通情况下都会是这样的意图。
db.lessons.update({}, {$set:{'course_id':'c.101'}});
更新多条记录
使用 {multi: true}。參见: http://www.lai18.com/content/411017.html
db.lessons.update({}, {$set:{'course_id':'c.101'}}, {multi: true}); db.muusers.update({username: 'tom'}, {$set: {mobile: '6508639713'}}, {multi: true});
排序查询结果
使用 sort 方法
db.muusers.find().sort({firsttime: -1});
-1 降序。1 升序
清爽地查看查询结果
使用 pretty 方法
db.lessons.find({lesson: 1}, {slides: 0, mp3voice:0, wavvoice:0, wavvoicemin: 0}).pretty();
查看不存在某个字段的记录
使用 $exists
db.questions.find({'sequence_id': 1, 'pngslide': {$exists: false}}); db.mycollection.find( { "price" : { "$exists" : false } } )
限定查询结果个数 limit, 以及跳过開始的多少条记录 skip
使用 limit 和 skip
db.translation_memory.find({mp3voice: {$exists: false}}, null, {limit: 100});
删除 collection 中的全部内容
使用 collection 的 remove 方法
db.collection.remove();
得到 collection 中一个字段的长度
链式调用
db.lessons.find({lesson: 1}).toArray()[0].slides.join('').length
Collection 操作
更名 collection
使用 renameCollection 方法
db.quizzes.renameCollection('questions');
删除一个字段
使用 $unset
db.questions.update({}, {$unset: {quiz_name:1}}, {multi: true}); db.learning_progress.update({}, {$unset: {lesson:1}}, {multi: true}); db.lessons.update({}, {$unset: {wavvoice:1, wavvoicemin:1}}, {multi: true});
改动一个字段的名称
使用 $rename
db.students.update( { _id: 1 }, { $rename: { 'nickname': 'alias', 'cell': 'mobile' } } )
注意:有些MongoDB的关键词不能用做Collection的名称,比如:group。
2MongoDB新手教程(包括安装、经常使用命令、相关概念、使用技巧、常见操作等)
8MongoDB新手教程之细说MongoDB数据库的增删查改操作
10MongoDB新手教程之Windows下的MongoDB数据库安装图解
11MongoDB查询字段没有创建索引导致的连接超时异常解案例分享
30MongoDB教程之聚合(count、distinct和group)
39MongoDB系列教程(六):java操作mongodb实例
40MongoDB系列教程(七):MongoDb数据结构具体解释
41MongoDB系列教程(五):mongo语法和mysql语法对照学习
[整理]MongoDB 经常使用命令总结的更多相关文章
- MongoDB学习笔记-命令
连接数据库: mongodb://账号:密码@IP/库名 更多方式参考:http://www.runoob.com/mongodb/mongodb-connections.html 命令整理: 名称 ...
- 前端开发小白必学技能—非关系数据库又像关系数据库的MongoDB快速入门命令(2)
今天给大家道个歉,没有及时更新MongoDB快速入门的下篇,最近有点小忙,在此向博友们致歉.下面我将简单地说一下mongdb的一些基本命令以及我们日常开发过程中的一些问题.mongodb可以为我们提供 ...
- mongodb与mysql命令对比
mongodb与mysql命令对比 传统的关系数据库一般由数据库(database).表(table).记录(record)三个层次概念组成,MongoDB是由数据库(database).集合(col ...
- 解决mongodb设备mongod命令不是内部或外部的命令
1:安装 去mongodb的官网http://www.mongodb.org/downloads下载32bit的包 解压后会出现下面文件 在安装的盘C:下建立mongodb目录,拷贝bin目录到该目录 ...
- mongodb 常用的命令
mongodb 常用的命令 对数据库的操作,以及登录 1 进入数据库 use admin 2 增加或修改密码 db.addUser('wsc', '123') 3查看用户列表 db.system.us ...
- Mongodb的mongostat命令
Mongodb的mongostat命令可实时(1秒钟刷新一次)显示Mongodb数据库的运行情况,可视为性能监视器. 1.启动命令:authenticationDatabase表示用户认证证书所在的数 ...
- mongodb输错命令后不能删除问题
在用crt连接Linux操作MongoDB时,命令输错了,想删除的时候,却删除不了,原因是crt的配置有问题,解决办法如下 第一步:选项-->会话选项
- 【mongodb】——常用命令大全
MongoDB是NoSQL数据库系统中比较流行的数据库之一.它也是最接近关系型数据库的,一个数据库可以包含多个集合(Collection),类似于关系数据库中的表:而每个集合中可以存储一组由列标识的记 ...
- MongoDB基本管理命令 [转]
MongoDB基本管理命令 linux下配置安装mongodb 10分钟玩转mongoDB 官网安装教程 使用命令行方式连接mongodb: mongo /admin -u用户名 -p密码 --连接 ...
随机推荐
- 阿尔宾我饿iejr89e 如何
http://www.huihui.cn/share/8112372 http://www.huihui.cn/share/8112363 http://www.huihui.cn/share/811 ...
- 基于visual Studio2013解决C语言竞赛题之前言
前言:关于VS2013 刚装完VS2013,新的IDE给人全新的编程体验,界面比以前更急简洁漂亮,不多说了,先上图吧 第一次启动VS2013
- android面试题之三
十一.对一些资源以及状态的操作保存,最好是保存在生命周期的哪个函数中进行? 若在onPause()中进行保存,相应需要在onResume()中进行恢复. 若在onStop()中进行保存,相应需要在on ...
- Linux malloc大内存的方法
本博文为原创,遵循CC3.0协议,转载请注明出处:http://blog.csdn.net/lux_veritas/article/details/9963199 ------------------ ...
- HNU13028Attacking rooks (二分匹配,一行变多行,一列变多列)
Attacking rooks Time Limit: 20000ms, Special Time Limit:50000ms, Memory Limit:65536KB Total submit u ...
- C++赋值函数详解
赋值函数 每个类只有一个赋值函数 由于并非所有的对象都会使用拷贝构造函数和赋值函数,程序员可能对这两个函数有些轻视. 1,如果不主动编写拷贝构造函数和赋值函数,编译器将 ...
- tomcat环境变量的配置(网上摘,全部验证通过)
tomcat环境变量的配置 1.===> 进入bin目录下,双击startup.bat看是否报错.一般肯定会报. 2.===> 右键我的电脑===>高级===>环境变量 ...
- ContentProvider中的数据生成时机
目录结构: , 先给个结论: 仅仅是实例化mySqliteHelper()这个类的时候是不会创建数据库的,实际上数据库的真正创建是在helper.getWritableDatabase()的方法执行后 ...
- 《算法导论》读书笔记之图论算法—Dijkstra 算法求最短路径
自从打ACM以来也算是用Dijkstra算法来求最短路径了好久,现在就写一篇博客来介绍一下这个算法吧 :) Dijkstra(迪杰斯特拉)算法是典型的最短路径路由算法,用于计算一个节点到其他所有节点的 ...
- UASCO Zero Sum DFS + Stack
给一个N 表示1 2 3 ...N 求出所有 zero sum的情况 [简单Dfs 即可] 运算结果的时候我使用了一个stack... 比如N = 7 那么要求输出 1+2-3+4-5-6+7 1+2 ...