文档菜单
文档首页
/ / /
Kotlin 同步驱动程序
/ /

单字段索引

本页内容

  • 概述
  • 示例数据
  • 创建单字段索引
  • 附加信息
  • API 文档

单字段索引是集合文档中单个字段的索引。它们可以提高单个字段查询和排序性能,并支持TTL 索引,该索引在指定时间或特定时钟时间后自动从集合中删除文档。

创建单字段索引时,必须指定以下内容

  • 创建索引的字段

  • 索引值的排序顺序(升序或降序)

注意

..._id_索引是单字段索引的一个例子。在创建新集合时,此索引会自动在_id字段上创建。

本指南中的示例使用来自Atlas 示例数据集sample_mflix数据库中的movies集合。要了解如何创建免费的 MongoDB Atlas 集群并加载示例数据集,请参阅Atlas 入门指南。

以下 Kotlin 数据类模型表示此集合中的文档

data class Movie(
@BsonId
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 文档

返回

与索引一起工作