索引能夠極大的提高查詢的效率。在資料庫中簡曆索引必不可少。
在MongoDB中可以很輕鬆的建立索引。
預設索引_id_
開啟MongoDB伺服器,建立資料庫cnblogs,建立集合Users 。(關於這部分知識請看上一篇MongoDB開發學習(1)開天闢地,經典入門)
在shell視窗鍵入如下命令查詢集合中所有索引:
> db.Users.getIndexes()
從輸出的結果我們可以看到,系統已經預設為Users集合建立了一個索引_id_。
MongoDB在每個集合裡有個預設的“_id”的“欄位”,相當於“主鍵”。集合建立後系統會自動建立一個索引在“_id”鍵上,它是預設索引,索引名叫“_id_”,不允許刪除。
建立索引
在MongoDB中使用ensureIndex()命令建立索引
1) 建立單例索引
> db.Users.ensureIndex({name:1})
2) 建立聯合索引
聯合索引就是將多個欄位作為一個索引
> db.Users.ensureIndex({name:1,sex:-1}) //其中,關鍵字後面的數字表示索引的排序方向,1表示升序,-1表示倒序。 //索引的名稱預設格式為:“關鍵字_數字”,比如上面建立的兩個索引的名稱即為:”name_1”, “name_1_sex_-1”
3) 建立文檔索引
所謂文檔索引就是集合的某個“欄位”是文檔,然後給該欄位建立索引
可以給整個“欄位”建立索引,如:
> db.Users.ensureIndex({‘Article’:1})
也可以給該“欄位”文檔的部分某個屬性簡曆索引,如:
> db.Users.ensureIndex({‘Article.Title’:1})
刪除索引
在MongoDB中使用dropIndex()命令刪除索引,如:
> db.Users.dropIndex(‘Name_1’)
相關閱讀:MongoDB開發學習(1)開天闢地,經典入門
原文地址:http://www.cnblogs.com/xumingxiang/archive/2012/04/09/2438939.html
作者 : 徐明祥
出處:http://www.cnblogs.com/xumingxiang
著作權:本文著作權歸作者和部落格園共有
轉載:歡迎轉載,為了儲存作者的創作熱情,請按要求【轉載】,謝謝
要求:未經作者同意,必須保留此段聲明;必須在文章中給出原文串連;否則必究法律責任