1. 创建索引:
- 你可以使用 createIndex 方法来创建索引。
- 语法:db.collection.createIndex({ field: 1 }),其中 field 是你要创建索引的字段名,1 表示升序,-1 表示降序。
- 示例:
db.students.createIndex({ student_id: 1 });
- 你还可以创建复合索引,即多个字段组合在一起形成的索引:
db.students.createIndex({ field1: 1, field2: -1 });
2. 查看索引:
- 你可以使用 getIndexes 方法来查看集合中的所有索引。
db.students.getIndexes();
3. 删除索引:
- 你可以使用 dropIndex 方法删除索引。
- 语法:db.collection.dropIndex("index_name")。
db.students.dropIndex("student_id_1");
4. 稀疏索引:
- 稀疏索引只包含具有该字段的文档的条目,对于字段值为 null 或不存在的文档,不会包含在索引中。
- 创建稀疏索引的示例:
db.students.createIndex({ age: 1 }, { sparse: true });
5. 唯一索引:
- 唯一索引确保集合中不存在重复的索引键值。
- 创建唯一索引的示例:
db.students.createIndex({ student_id: 1 }, { unique: true });
6. 文本索引:
- 文本索引用于支持全文本搜索。
- 创建文本索引的示例:
db.articles.createIndex({ content: "text" });
请根据你的具体需求选择适当的索引类型,并注意索引的创建可能会影响写入性能,因为在插入、更新和删除文档时,MongoDB 还需要维护索引。因此,在创建索引时需权衡读写性能。
转载请注明出处:http://www.pingtaimeng.com/article/detail/14228/MongoDB