[整理]MongoDB 常用命令總結,mongodb常用命令

來源:互聯網
上載者:User

[整理]MongoDB 常用命令總結,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介紹和使用執行個體

 

著作權聲明:本文為博主原創文章,未經博主允許不得轉載。

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.