MongoDB資料庫索引操作講解

2021-12-30 11:17:22 字數 1446 閱讀 6774

索引就是用來加速查詢的。資料庫索引與書籍的索引類似:有了索引就不需要翻遍整本書,資料庫則可以直接在索引中查詢,使得查詢速度能提高幾個數量級。在索引中找到條目以後,就可以直接跳轉到目標文件的位置。

一、建立索引 --- ensureindex()

語法結構:

db.collection.ensureindex(keys[,options])

keys,要建立索引的引數列表。如:,其中key表示欄位名,1表示公升序排序,-1表示降序排序options,可選引數background,boolean,在後台建立索引,以便建立索引時不阻止其他資料庫活動,預設falseunique,boolean,建立的索引是否唯一,指定為true建立唯一索引,預設falsename,string,指定索引的名稱,如果未指定,根據連線索引的欄位名和排序順序生成乙個索引名稱dropdups,boolean,在建立唯一索引時是否刪除反覆記錄,指定 true 建立唯一索引。預設值為 falsesparse,boolean,對文件中不存在的字段資料不啟用索引。這個引數須要特別注意。假設設定為true的話,在索引欄位中不會查詢出不包括相應欄位的文件.。預設值為 falseexpireafterseconds,integer,指定乙個以秒為單位的數值,完畢ttl設定,設定集合的生成時間v,index version,索引的版本號號。預設的索引版本號取決於mongod建立索引時執行的版本號weights,document,索引權重值。數值在 1 到 99,999 之間,表示該索引相對於其它索引欄位的得分權重。default_language,string,對於文字索引。該引數決定了停用詞及詞幹和詞器的規則的列表。 默覺得英語language_override,string,對於文字索引。該引數指定了包括在文件中的欄位名。語言覆蓋預設的language,預設值為 language.

1、建立索引

db.person.ensureindex()

2、建立唯一索引

db.person.ensureindex(,)

二、重建索引 --- reindex()

db.person.reindex()

三、檢視索引 --- getindexes()

1、檢視集合中的索引

dp.person.getindexes()

2、檢視集合中的索引大小

db.person.totalindexsize()

3、檢視索引相關資訊

dp.person.starts()

4、檢視資料庫中所有索引

db.system.indexes.find()

5、檢視查詢使用索引的情況

db.person.find(name:"jack55555").explain()

四、刪除索引 --- dropindex()

1、刪除指定的索引

db.person.dropindex("name_1")

2、刪除所有索引

db.person.dropindexes()

MongoDB 資料庫操作

1 插入記錄 使用資料庫 如果沒有該資料庫就會建立,有就進入該模式 use use my testdb 插入資料 db.user.insert db.user.insert 顯示資料庫 show dbs my mongodb是隱式建立的資料庫 顯示表 show collections user是隱式...

java 操作MongoDB資料庫

建立了乙個mongodb的資料庫連線物件,它預設連線到當前機器的localhost位址,埠是27017 mongo mongo new mongo mongo mongo new mongo 127.0.0.1 27017 for string name mongo.getdatabasenames...

mongodb資料庫基本操作

一般來說,涉及到mongodb的操作主要有四種 增刪查改。nodejs可以很方便簡潔的實現這些操作。準備工作 連線mongodb伺服器 var server new mongodb.server localhost 27017,這裡server就指本地 localhost 的伺服器 連線伺服器上的資...