⚡ 编程实验室🏗️ HTML🎨 CSS⚡ JavaScript🐍 Python🗄️ SQL☕ Java⚛️ React💚 Vue🟢 Node.js⚙️ C语言🐘 PHP🐹 Go🔷 TypeScript🐬 MySQL🔧 C++🎯 C#🦀 Rust🅱️ Bootstrap💡 jQuery🎸 Django🍃 MongoDB👗 Sass🎪 Kotlin📊 R语言📋 XML📊 Excel🐘 PostgreSQL🐳 Docker🅰️ Angular🎮 游戏🏠 网站首页

MongoDB 全文搜索

使用文本索引和 $text 操作符进行高效的全文检索。 · 难度:入门 · +15XP

文本索引

MongoDB 提供文本索引来支持字符串内容的搜索。可以在一个或多个字段上创建文本索引。

db.articles.createIndex({ title: 'text', content: 'text' });

基本搜索

使用 $text 操作符和 $search 进行搜索:

db.articles.find({ $text: { $search: 'mongodb 教程' } });

高级选项

选项说明
$search搜索关键词,用空格分隔
$language指定语言(如 'english', 'none')
$caseSensitive是否区分大小写(默认 false)
$diacriticSensitive是否区分变音符号

排除与短语

// 排除单词 -apple
// 精确短语 "\"exact phrase\""
db.articles.find({ $text: { $search: 'mongodb -apple "performance tuning"' } });

评分与排序

使用 $meta: 'textScore' 获取相关性评分并排序:

db.articles.find({ $text: { $search: 'mongodb' } }, { score: { $meta: 'textScore' } })
  .sort({ score: { $meta: 'textScore' } });

练习提示

在博客文章集合上创建文本索引,搜索包含“数据库”和“性能”的文章,按相关性排序。

Ctrl+Enter
🚀 升级VIP
解锁全部课程+AI助手

🏆 学习排行

加载中...

📊 统计

📖 83 篇
0 完成
🔥 0