MongoDB 常用命令總結(jié)
簡(jiǎn)單的的增刪改查數(shù)據(jù)
在查詢結(jié)果中指定顯示或者不顯示某個(gè)字段
例如,我們希望在 lessons 集合中查找所有數(shù)據(jù),但是不希望在返回結(jié)果中包含 slides 字段;因?yàn)?slides 是一個(gè)巨長(zhǎng)的以 base64 表示的圖片數(shù)組,影響查詢結(jié)果的閱讀。
那么我們就可以在 query object 后面跟上一個(gè)參數(shù)。如下:
db.lessons.find({}, {slides:0});
同樣也可以明確指定顯示哪些字段:
db.bios.find(
{ },
{ name: 1, contribs: 1, _id: 0 }
)
比較操作 – 大于和小于
我們要查詢時(shí)間范圍在 startTime 和 endTime 間的數(shù)據(jù)記錄,同時(shí)要求 Content 內(nèi)容是數(shù)字 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 比較操作符。
有關(guān) MongoDB 的操作符,參見(jiàn):http://docs.mongodb.org/manual/reference/operator/query/
更新一條記錄的某些屬性
使用 $set 表示只更新指定的字段,而不修改其他字段,我們一般情況下都會(huì)是這種意圖。
db.lessons.update({}, {$set:{'course_id':'c.101'}});
更新多條記錄
使用 {multi: true}
db.lessons.update({}, {$set:{'course_id':'c.101'}}, {multi: true});
db.muusers.update({username: 'tom'}, {$set: {mobile: '6508639713'}}, {multi: true});
排序查詢結(jié)果
使用 sort 方法
db.muusers.find().sort({firsttime: -1});
-1 降序,1 升序
清爽地查看查詢結(jié)果
使用 pretty 方法
db.lessons.find({lesson: 1}, {slides: 0, mp3voice:0, wavvoice:0, wavvoicemin: 0}).pretty();
查看不存在某個(gè)字段的記錄
使用 $exists
db.questions.find({'sequence_id': 1, 'pngslide': {$exists: false}});
db.mycollection.find( { "price" : { "$exists" : false } } )
限定查詢結(jié)果個(gè)數(shù) limit, 以及跳過(guò)開(kāi)始的多少條記錄 skip
使用 limit 和 skip
db.translation_memory.find({mp3voice: {$exists: false}}, null, {limit: 100});
刪除 collection 中的所有內(nèi)容
使用 collection 的 remove 方法
db.collection.remove();
得到 collection 中一個(gè)字段的長(zhǎng)度
鏈?zhǔn)秸{(diào)用
db.lessons.find({lesson: 1}).toArray()[0].slides.join('').length
Collection 操作
更名 collection
使用 renameCollection 方法
db.quizzes.renameCollection('questions');
刪除一個(gè)字段
使用 $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});
修改一個(gè)字段的名稱
使用 $rename
db.students.update( { _id: 1 }, { $rename: { 'nickname': 'alias', 'cell': 'mobile' } } )
注意:有些MongoDB的關(guān)鍵詞不能用做Collection的名稱,例如:group。
以上所述就是本文的全部?jī)?nèi)容了,希望大家能夠喜歡。
相關(guān)文章
mongodb 查看數(shù)據(jù)庫(kù)和表大小
mongodb查看數(shù)據(jù)庫(kù)和表的方法比較簡(jiǎn)單,在為這里推薦使用stats的方法,直觀并且詳細(xì)。2014-07-07
Windows系統(tǒng)下安裝MongoDB與Robomongo環(huán)境詳解
這篇文章主要給大家介紹了在Windows系統(tǒng)下安裝MongoDB與Robomongo環(huán)境的相關(guān)資料,文中介紹的非常詳細(xì),相信對(duì)大家具有一定的參考價(jià)值,需要的朋友們下面來(lái)一起看看吧。2017-04-04
MongoDB數(shù)據(jù)庫(kù)的特色和優(yōu)點(diǎn)介紹
這篇文章主要介紹了MongoDB數(shù)據(jù)庫(kù)的特色和優(yōu)點(diǎn)介紹,本文總結(jié)了每個(gè)開(kāi)發(fā)人員都應(yīng)該知道的5個(gè)MongoDB特點(diǎn),需要的朋友可以參考下2015-05-05
MongoDB快速入門(mén)筆記(七)MongoDB的用戶管理操作
這篇文章主要介紹了MongoDB快速入門(mén)筆記(七)MongoDB的用戶管理操作 的相關(guān)資料,需要的朋友可以參考下2016-06-06
CentOS7下安裝MongoDB數(shù)據(jù)庫(kù)過(guò)程
大家好,本篇文章主要講的是CentOS7下安裝MongoDB數(shù)據(jù)庫(kù)過(guò)程,感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話記得收藏一下,方便下次瀏覽2021-12-12
利用MongoDB中oplog機(jī)制實(shí)現(xiàn)準(zhǔn)實(shí)時(shí)數(shù)據(jù)的操作監(jiān)控
MongoDB 的Replication是通過(guò)一個(gè)日志來(lái)存儲(chǔ)寫(xiě)操作的,這個(gè)日志就叫做oplog,而下面這篇文章主要給大家介紹了利用MongoDB中oplog機(jī)制實(shí)現(xiàn)準(zhǔn)實(shí)時(shí)數(shù)據(jù)的操作監(jiān)控的相關(guān)資料,需要的朋友可以參考借鑒,下面來(lái)一起看看吧。2017-05-05

