mongodb添加索引的方法:在mongodb可以使用createIndex()方法來創(chuàng)建添加索引,語法格式為:“db.collection.createIndex(keys, options)”,這里keys指的是你創(chuàng)建添加索引的值,并且能夠使用“1”或者“-1”來指定按升序或者降序創(chuàng)建。
具體內(nèi)容如下:
索引通常能夠極大的提高查詢的效率,如果沒有索引,MongoDB在讀取數(shù)據(jù)時(shí)必須掃描集合中的每個(gè)文件并選取那些符合查詢條件的記錄。
這種掃描全集合的查詢效率是非常低的,特別在處理大量的數(shù)據(jù)時(shí),查詢可以要花費(fèi)幾十秒甚至幾分鐘,這對(duì)網(wǎng)站的性能是非常致命的。
索引是特殊的數(shù)據(jù)結(jié)構(gòu),索引存儲(chǔ)在一個(gè)易于遍歷讀取的數(shù)據(jù)集合中,索引是對(duì)數(shù)據(jù)庫(kù)表中一列或多列的值進(jìn)行排序的一種結(jié)構(gòu)
MongoDB使用 createIndex() 方法來創(chuàng)建索引。
注意:在 3.0.0 版本前創(chuàng)建索引方法為 db.collection.ensureIndex(),之后的版本使用了 db.collection.createIndex() 方法,ensureIndex() 還能用,但只是 createIndex() 的別名。
createIndex()方法基本語法格式如下所示:
>db.collection.createIndex(keys, options)
語法中 Key 值為你要?jiǎng)?chuàng)建的索引字段,1 為指定按升序創(chuàng)建索引,如果你想按降序來創(chuàng)建索引指定為 -1 即可。
實(shí)例
>db.col.createIndex({"title":1})>
createIndex() 方法中你也可以設(shè)置使用多個(gè)字段創(chuàng)建索引(關(guān)系型數(shù)據(jù)庫(kù)中稱作復(fù)合索引)。
>db.col.createIndex({"title":1,"description":-1})>
createIndex() 接收可選參數(shù),可選參數(shù)列表如下:
實(shí)例
在后臺(tái)創(chuàng)建索引:
db.values.createIndex({open: 1, close: 1}, {background: true})
通過在創(chuàng)建索引時(shí)加 background:true 的選項(xiàng),讓創(chuàng)建工作在后臺(tái)執(zhí)行