Mongodb的索引
Jun 07, 2016 pm 03:56 PM1. 简介 索引是为了加速查询。如果没有索引,mongodb在查询时会做表扫描,如果集合很大时,这个查询会非常慢。一般对创建查询时的键都建立索引。 为排序字段建立索引,如果对未建立索引的字段sort,mongodb会将所有的数据取到内存中来排序,如果集合大到不能
1. 简介
索引是为了加速查询。如果没有索引,mongodb在查询时会做表扫描,如果集合很大时,这个查询会非常慢。一般对创建查询时的键都建立索引。为排序字段建立索引,如果对未建立索引的字段sort,mongodb会将所有的数据取到内存中来排序,如果集合大到不能在内存中排序,则mongodb会报错。
2. mongodb创建索引
创建索引使用ensureIndex命令。> db.people.ensureIndex({"username" : 1});
3. 组合索引
对于组合查询或排序,建立组合索引。> db.people.ensureIndex({"date" : -1, "username" : 1});
4. 内嵌文档建立索引
为blog集合的评论按照时间建立索引:> db.blog.ensureIndex({"comments.date" : 1});
5. 唯一索引
唯一索引确保集合中的每个键都是唯一值。> db.people.ensureIndex({"username" : 1}, {"uniqe" : true});
> db.people.ensureIndex({"username" : 1}, {"unique" : true, "dropDups" : true});
6. 查看建立的索引
索引放在system.indexes集合中。> db.system.indexes.find();
7. 删除索引
通过索引的名称,使用dropIndexes可以删除索引。索引名称通过system.indexes来查询。> db.user.dropIndexes({"username_1" : 1});

Article chaud

Outils chauds Tags

Article chaud

Tags d'article chaud

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Quelle version est généralement utilisée pour mongodb ?

Comment vérifier vos diplômes universitaires sur Xuexin.com

12306 Comment vérifier l'historique des enregistrements d'achat de billets Comment vérifier l'historique des enregistrements d'achat de billets

Quels sont les avantages de la base de données MongoDB

Où est la base de données créée par mongodb ?

Où sont les fichiers de la base de données mongodb ?
