单字段索引
概述
单字段索引是集合文档中单个字段的索引。它们可以提高单个字段查询和排序性能,并支持TTL 索引,该索引在指定时间或特定时钟时间后自动从集合中删除文档。
创建单字段索引时,必须指定以下内容
创建索引的字段
索引值的排序顺序(升序或降序)
注意
..._id_
索引是单字段索引的一个例子。在创建新集合时,此索引会自动在_id
字段上创建。
示例数据
本指南中的示例使用来自Atlas 示例数据集的sample_mflix
数据库中的movies
集合。要了解如何创建免费的 MongoDB Atlas 集群并加载示例数据集,请参阅Atlas 入门指南。
以下 Kotlin 数据类模型表示此集合中的文档
data class Movie( val id: ObjectId, val title: String? = "", val type: String? = "", val genres: List<String>? = null, val cast: List<String>? = null, val plot: String? = "", )
创建单字段索引
以下示例在title
字段上创建一个升序索引
collection.createIndex(Indexes.ascending(Movie::title.name))
以下是一个示例查询,该查询被前面代码示例中创建的索引所覆盖
val filter = Filters.eq(Movie::title.name, "Batman") val sort = Sorts.ascending(Movie::title.name) val results = collection.find(filter).sort(sort) results.forEach { result -> println(result) }
Movie(id=573a1398f29313caabceb515, title=Batman, ...)
附加信息
要了解有关单字段索引的更多信息,请参阅 MongoDB 服务器手册中的单字段索引。
API 文档
要了解本指南中讨论的任何方法,请参阅以下 API 文档