首页/数据/NoSQL 速查/文本索引的创建细节
MongoDB99 条

文本索引的创建细节

文本索引为字符串字段建立词项表:可对多字段赋权重、指定 default_language;每个集合只能建一个文本索引。

NoSQL 速查数据更新于 2026-10-12
创建createIndex({ title: "text", body: "text" }, { weights: { title: 10, body: 1 } })
语言default_language: "none" 关闭词干与停用词处理
限制一个集合仅一个文本索引,删除重建成本高

示例

示例
db.articles.createIndex({ title: "text", body: "text" }, { weights: { title: 10, body: 1 }, default_language: "none" })
混合语言内容常用 default_language: "none",避免英文词干化误伤其他语言词项。

易错点

  • 中文分词依赖空格与标点,整句中文检索效果有限;评估外部检索引擎或应用侧分词

数据来源与参考

  • MongoDB Manual: Text Indexes
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌