专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > Go

[拾掇]MongoDB 常用命令总结

发布时间:2011-06-29 18:13:10 文章来源:www.iduyao.cn 采编人员:星星草
[整理]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。

 

《MongoDB技术知识》系列技术文章整理收藏 

1mongoDB入门需要了解的基本知识

2MongoDB入门教程(包含安装、常用命令、相关概念、使用技巧、常见操作等)

3MongoDB入门教程之分片技术详解

4MongoDB入门教程之常用的运维技术介绍

5MongoDB入门教程之C#驱动操作实例

6MongoDB入门教程之主从复制配置详解

7MongoDB入门教程之聚合和游标操作介绍

8MongoDB入门教程之细说MongoDB数据库的增删查改操作

9MongoDB入门教程之索引操作浅析

10MongoDB入门教程之Windows下的MongoDB数据库安装图解

11MongoDB查询字段没有创建索引导致的连接超时异常解案例分享

12MongoDB日志文件过大的解决方法

13MongoDB社区版和企业版的差别对照表

14MongoDB中文社区发起人带你学习mongoDB

15对MongoDB数据库性能瓶颈分析

16MongoDB 分页查询的方法及性能

17MongoDB分片存储的集群架构实现

18Mongodb批量删除gridfs文件实例

19Mongodb增加、移除Shard Server实例

20Mongodb增加、移除Arbiter节点实例

21CentOS系统下MongoDB安装及配置教程

22MongoDB修改、删除文档的域属性实例

23Python中的MongoDB基本操作:连接、查询实例

24MongoDB导出查询结果到文件例子

25MongoDB中创建索引需要注意的事项

26MongoDB中的一些坑(最好不要用)

27给MongoDB添加用户权限方法分享

28Linux系统下MongoDB的简单安装与基本操作

29MongoDB教程之基本管理命令

30MongoDB教程之聚合(count、distinct和group)

31MongoDB教程之索引介绍

32MongoDB教程之数据操作实例

33MongoDB教程之入门基础知识

34MongoDB教程之查询操作实例

35MongoDB系列教程(四):设置用户访问权限

36MongoDB系列教程(八):GridFS存储详解

37MongoDB数据库的特色和优点介绍

38MongoDB简介 MongoDB五大特色

39MongoDB系列教程(六):java操作mongodb实例

40MongoDB系列教程(七):MongoDb数据结构详解

41MongoDB系列教程(五):mongo语法和mysql语法对比学习

42MongoDB系列教程(二):MongoDB简介

43MongoDB系列教程(一):NoSQL起源

44MongoDB中的MapReduce简介

45MongoDB系列教程(三):Windows中下载和安装MongoDB

46浅谈MongoDB的备份方式

47MongoDB 常用命令总结

48MongoDB与MySQL的操作对比表及区别介绍

49MongoDB安全配置详解

50MongoDB中的bson介绍和使用实例

 

版权声明:本文为博主原创文章,未经博主允许不得转载。

1楼ndsckm4小时前
不错,赞一个
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

  • ModernUI课程:定义一个Logo

    ModernUI教程:定义一个Logo ModernWindow的标题栏包含了一块区域用来显示自定义的窗体Logo: 这个窗体logo通过ModernWindow.LogoD...

  • Django忘记管理员账号和密码的解决方法

    Django忘记管理员账号和密码的解决办法 看着Django的教程学习搭建网站,结果忘记第一次创建的账号和密码了。结果搭建成功以后,一直...

  • GO语言小结(1)——基本知识

    GO语言总结(1)——基本知识 1、注释(与C++一样)   行注释://  块注释:/*   ...  */ 2、标识符   可以这么说,除了数字开头...

  • golang 惯用的文件读取方式

    golang 常用的文件读取方式 Golang 的文件读取方法很多,刚上手时不知道怎么选择,所以贴在此处便后速查。 一次性读取 小文件推荐一...

  • 查询深圳市通相关信息

    查询深圳通相关信息 用 HTTP.GET 从开放 API 中查询深圳通信息,然后将 JSON 数据存入结构体中,再格式化输出。 注意:获取的并不是实...

  • Go语言设计模式实践:结合(Composite)

    Go语言设计模式实践:组合(Composite) 关于本系列 这个系列首先是关于Go语言实践的。在项目中实际使用Go语言也有段时间了,一个体会就...

  • 列出索引和遍历目录

    列出目录和遍历目录 获取目录列表用 ioutil.ReadDir(),遍历目录用 filepath.Walk(),使用方法请参考文章示例。 示例代码: package ma...

  • io 包的惯用接口速记

    io 包的常用接口速记 我没有 C/C++ 基础,没有接口的概念,且从 Python 投奔而来,Python 的极简主义(一个结果往往只提供一个方法),让我在...

  • 代理服务扩充

    代理服务扩展 之前自己实现了一个代理服务,当时考虑的是只要支持SOCKS5就好了,因为我经常用CHROME,配合着SwitchySharp,体验还是很棒...

  • 文件的创造与打开

    文件的创建与打开 文件操作是个很重要的话题,使用也非常频繁,熟悉如何操作文件是必不可少的。Golang 对文件的支持是在 os package ...

热门推荐: