面试题答案
一键面试from pymongo import MongoClient
# 连接到MongoDB
client = MongoClient('mongodb://localhost:27017/')
db = client['your_database']
collection = db['your_collection']
# 为某个字段创建升序索引
collection.create_index([('your_field', 1)])
索引在查询优化中的作用:
- 加速查询:索引类似书籍的目录,能快速定位到满足查询条件的数据,避免全表扫描。例如,在有
user
集合,有age
字段索引时,查询age=30
的用户,数据库可通过索引直接定位相关记录,而非逐行检查。 - 排序优化:当查询需要对某个字段排序时,若该字段有索引,数据库可利用索引的有序性直接获取排序结果,无需额外排序操作,提高排序效率。
- 多字段查询:复合索引可优化涉及多个字段的查询。例如,有
user
集合,包含city
和age
字段,创建复合索引[(city, 1), (age, 1)]
,对同时按city
和age
查询的操作有优化作用。