麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 數(shù)據(jù)庫 > MongoDB > 正文

MongoDB 常用命令總結(jié)

2020-03-14 13:21:35
字體:
供稿:網(wǎng)友
Mongo最大的特點(diǎn)是他支持的查詢語言非常強(qiáng)大,其語法有點(diǎn)類似于面向?qū)ο蟮牟樵冋Z言,幾乎可以實(shí)現(xiàn)類似關(guān)系數(shù)據(jù)庫單表查詢的絕大部分功能,而且還支持對(duì)數(shù)據(jù)建立索引。Mongo還可以解決海量數(shù)據(jù)的查詢效率,當(dāng)數(shù)據(jù)量達(dá)到50GB以上時(shí),Mongo數(shù)據(jù)庫訪問速度是MySQL10 倍以上
 

簡(jiǎn)單的的增刪改查數(shù)據(jù)

在查詢結(jié)果中指定顯示或者不顯示某個(gè)字段

例如,我們希望在 lessons 集合中查找所有數(shù)據(jù),但是不希望在返回結(jié)果中包含 slides 字段;因?yàn)?slides 是一個(gè)巨長(zhǎng)的以 base64 表示的圖片數(shù)組,影響查詢結(jié)果的閱讀。
那么我們就可以在 query object 后面跟上一個(gè)參數(shù)。如下:

 

復(fù)制代碼代碼如下:

db.lessons.find({}, {slides:0});

 

同樣也可以明確指定顯示哪些字段:

 

復(fù)制代碼代碼如下:

db.bios.find(
{ },
{ name: 1, contribs: 1, _id: 0 }
)

 

比較操作 – 大于和小于

我們要查詢時(shí)間范圍在 startTime 和 endTime 間的數(shù)據(jù)記錄,同時(shí)要求 Content 內(nèi)容是數(shù)字 1 到 5。

 

復(fù)制代碼代碼如下:

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 的操作符,參見:http://docs.mongodb.org/manual/reference/operator/query/

更新一條記錄的某些屬性

使用 $set 表示只更新指定的字段,而不修改其他字段,我們一般情況下都會(huì)是這種意圖。

 

復(fù)制代碼代碼如下:

db.lessons.update({}, {$set:{'course_id':'c.101'}});

 

更新多條記錄

使用 {multi: true}

 

復(fù)制代碼代碼如下:

db.lessons.update({}, {$set:{'course_id':'c.101'}}, {multi: true});
db.muusers.update({username: 'tom'}, {$set: {mobile: '6508639713'}}, {multi: true});

 

排序查詢結(jié)果

使用 sort 方法

 

復(fù)制代碼代碼如下:

db.muusers.find().sort({firsttime: -1});

 

-1 降序,1 升序

清爽地查看查詢結(jié)果

使用 pretty 方法

 

復(fù)制代碼代碼如下:

db.lessons.find({lesson: 1}, {slides: 0, mp3voice:0, wavvoice:0, wavvoicemin: 0}).pretty();

 

查看不存在某個(gè)字段的記錄

使用 $exists

 

復(fù)制代碼代碼如下:

db.questions.find({'sequence_id': 1, 'pngslide': {$exists: false}});
db.mycollection.find( { "price" : { "$exists" : false } } )

 

限定查詢結(jié)果個(gè)數(shù) limit, 以及跳過開始的多少條記錄 skip

使用 limit 和 skip

 

復(fù)制代碼代碼如下:

db.translation_memory.find({mp3voice: {$exists: false}}, null, {limit: 100});

 

刪除 collection 中的所有內(nèi)容

使用 collection 的 remove 方法

 

復(fù)制代碼代碼如下:

db.collection.remove();

 

得到 collection 中一個(gè)字段的長(zhǎng)度

鏈?zhǔn)秸{(diào)用

 

復(fù)制代碼代碼如下:

db.lessons.find({lesson: 1}).toArray()[0].slides.join('').length

 

Collection 操作

更名 collection

使用 renameCollection 方法

 

復(fù)制代碼代碼如下:

db.quizzes.renameCollection('questions');

 

刪除一個(gè)字段

使用 $unset

 

復(fù)制代碼代碼如下:

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

 

復(fù)制代碼代碼如下:

db.students.update( { _id: 1 }, { $rename: { 'nickname': 'alias', 'cell': 'mobile' } } )

 

注意:有些MongoDB的關(guān)鍵詞不能用做Collection的名稱,例如:group。

以上所述就是本文的全部?jī)?nèi)容了,希望大家能夠喜歡。


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 91精品国产99久久久久久红楼 | 国产成人精品免高潮在线观看 | 欧美囗交 | 毛片视频网站在线观看 | 男女一边摸一边做羞羞视频免费 | 久久久久久久网站 | 久久狠狠高潮亚洲精品 | 依依成人综合 | 成人区一区二区三区 | 国产毛片在线看 | www.91操| 日本高清无遮挡 | 人禽l交免费视频观看 视频 | 日韩大片在线永久观看视频网站免费 | 日本黄色免费观看视频 | 欧美xxxx精品另类 | 在线看免电影网站 | 黄色大片大毛片 | 日韩激情一区 | 97se亚洲综合在线韩国专区福利 | 亚洲第一视频 | 亚洲第一成人在线视频 | 中国av免费在线观看 | 日韩色视频 | 国产成人综合在线观看 | 日韩视频一二三 | 欧美 国产 综合 | 最新毛片在线观看 | 九九热视频这里只有精品 | 97中文| 久久久久久久久浪潮精品 | 成码无人av片在线观看网站 | 久久久久国产精品久久久久 | 国产免费中文字幕 | 男男啪羞羞视频网站 | 午夜精品久久久久久久久久久久久蜜桃 | 国产色视频免费 | 久久不射电影网 | 亚洲乱妇19p| 国产精品久久久久久久久久电影 | 宅男噜噜噜66一区二区 |