MongoDB:使用变量进行文本搜索(精确匹配)

2023-11-29

MongoDB 3.4

我有一个变量值。 val1 =“小堡垒”

我需要在集合存储中搜索(名称字段上有文本索引),文档为

db.stores.insert([
     { _id: 1, name: "Java Hut", description: "Coffee and cakes" },
     { _id: 2, name: "Burger Buns", description: "Gourmet hamburgers" },
     { _id: 3, name: "Coffee Shop", description: "Just coffee" },
     { _id: 4, name: "Fort Coffee", description: "Discount clothing" },
     { _id: 5, name: "Java Shopping", description: "Indonesian goods" }
])


当我使用变量文本搜索集合时

db.City.find({$text:{$search: val1}})

它返回 _id : 4 文档,因为它包含 Fort。

我需要进行精确匹配,但使用变量。

仅当 val1 = "Fort Coffee" 时,上述搜索才应返回


当您进行文本搜索时,它有许多内部步骤,例如标记您的工作、分析单词的最低词干(例如,匹配烹饪和烹饪,因为两者都源自基本工作“cook”)。如果您期望完全匹配,那么您实际上并不是在寻找文本搜索,而是在寻找普通查询。

Hence,

如果你这样做:

db.City.find({$text:{$search: "Fort Minor"}})

它将尝试查找所有包含 fort、minor、minority、forting 等的文档。

如果您执行以下操作:

db.City.find({ name : "Fort Minor"})

如果会给您完全匹配的文档。

然而,这里有一个问题:

如果您搜索所有小写字母,例如:

db.City.find({ name : "fort minor"})

它不会给你你所期待的。

要解决此问题,请使用正则表达式:

db.user.find( { name: /^Fort Minor$/i } );
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MongoDB:使用变量进行文本搜索(精确匹配) 的相关文章

随机推荐

  • SQL查询匹配关键字?

    我有一个表 其中一列为nvarchar max 里面有从word文档中提取的文本 如何创建一个选择查询 将另一个关键字列表作为参数传递 并返回按匹配数排序的行 也许可以通过全文搜索来实现 是的 可以通过全文搜索 并且可能是最佳答案 对于直接
  • 非惯用的全局运算符重载如何工作?

    我想了解代码this answer type Mult Mult with static member inline Mult v1 a list fun v2 b list gt v1 gt List collect fun x gt v
  • 将文件路径字符串解析为json对象

    我有如下 URL 列表 如何将其转换为完整的json对象 我的 URL 数组 path1 subpath1 file1 doc path1 subpath1 file2 doc path1 subpath2 file1 doc path1
  • CakePHP debug() 不起作用,但 Debugger::dump() 正常

    自从 PHP4 和 Cake 1 3 我就一直在使用debug data 调试 CakePHP 中的模型输出等内容 然而 自从升级到 PHP5 4 后 我注意到debug data 似乎并不总是有效 例如 今天我做了一个简单的 data t
  • 在“订单”页面中显示产品图片 - Woocommerce

    这是我第一次与 WC 合作 我正在用这个来追赶我的尾巴 在 订单 页面中 客户可以看到他们进行的所有购买 该数组显示了有关订单的一些基本信息 我还需要展示客户购买的产品的图片 订单好像是自定义帖子 但是如何获取图片产品呢 我意识到这个问题太
  • 显示列表视图后尝试以编程方式设置 LISTVIEW 内的 SWITCH 状态

    所以我有一个警报列表 并将其绑定到列表视图 lstAlarms 在我的自定义 ListView 布局中 我还有一个开关 我想根据警报的状态以编程方式设置它 我想在 ListView 显示后立即执行此操作 请参阅下面我的代码 显示ListVi
  • 使用 Silverlight 在 WP7 应用程序中显示 GIF

    我想在我的 WP7 应用程序中显示 gif 有什么方法可以实现这一点吗 我试过这个http imagetools codeplex com 但无法使其与 WP7 一起使用 预先感谢您的任何帮助 实际上 它正在工作 但缺少一些文档 经历了一些
  • 如何使用 PHP 和 cURL 提交 POST 数据?

    任何人都可以帮助我如何使用 PHP 和 cURL 将数据从表单 POST 发送到 URL 使用 cURL 我想要完成的就是发送数据 我不想被重定向 也不想获得任何类型的输出 HTML 或文本 只需提交数据即可 很高兴知道数据是否已成功提交
  • 将标题与图像对齐

    JSFiddle 我的图形中有一个图像 该图像具有以下样式 height 300px max width 300px display block margin 0 auto 图像必须居中 图像下方的标题必须与图像的左下角左对齐 并且宽度不得
  • Ionic 2 构建类型错误:无法读取未定义的属性“AssetUrl”

    Ionic 2 CLI 构建失败给我以下错误 TypeError 无法读取未定义的属性 AssetUrl 我的研究引导我这个线程 and this one 两个线程都建议修改 package json 文件并删除 dependencies
  • 如何为Android库项目指定多个源目录

    我正在使用 ant 工具构建 android 库项目 我需要指定多个源目录 我尝试通过在 ant properties 文件中交替添加这些行来指定多个源目录 source dir src src2 source dir src src2 但
  • 从 PyQT5 检索 QtTableWidget 单元格的内容

    我有一些数据想要在QtTableWidget 我希望能够选择表的特定行 并根据所选行执行函数 专栏并不重要 这是我正在使用的数据示例 Id Test name Owner Script source 1 Login 1 test login
  • 安装 Azure U-SQL 扩展以在本地运行 R/Python 脚本?

    我们可以在 Azure Data Lake Analytics 中使用 R Python 代码扩展 U SQL 脚本 但如何在本地进行呢 在您的数据湖分析帐户中安装 U SQL 高级分析扩展1 1 启动 Azure 门户1 2 导航到您的数
  • JavaFX(8)警报:不同的按钮尺寸

    考虑一个带有两个按钮的 JavaFX 8 警报对话框 Alert alert new Alert AlertType CONFIRMATION ButtonType bttYes new ButtonType Yes ButtonType
  • AngularJS 中的 404 错误

    你好 我是 AngularJS 的新手 我开始于本教程 在教程中 http get方法正在调用 JSON 文件 就我而言 我总是收到 404 错误 JSON 文件的位置也与 HTML 文件相关 但总是遇到同样的错误 这是我的代码 索引 ht
  • 在同一页面内将变量从 JS 传递到 PHP [关闭]

    Closed 这个问题需要细节或清晰度 目前不接受答案 我知道这个问题已经被回答过很多次了 但我正在寻找的是同一页面内变量的传递 我知道PHP是服务器端脚本 而JS是客户端 因此当页面加载时 它将在JS之前加载PHP 因此不可能这样做 我正
  • LINQ to XML:查询正文必须以 select 子句或 group 子句结尾

    有人可以指导我修复此查询的错误 var objApps from item in xDoc Descendants VHost where from x in item Descendants Application select new
  • 不变是什么意思?

    如果字符串是不可变的 这是否意味着 我们假设是 JavaScript var str foo alert str substr 1 oo alert str foo 这是否意味着 当对字符串调用方法时 它将返回修改后的字符串 但不会更改初始
  • TensorFlowdynamic_rnn状态

    我的问题是关于 TensorFlow 方法tf nn dynamic rnn 它返回每个时间步的输出和最终状态 我想知道返回的最终状态是否是最大序列长度下的单元状态 或者是否由sequence length争论 为了更好地理解一个例子 我有
  • MongoDB:使用变量进行文本搜索(精确匹配)

    MongoDB 3 4我有一个变量值 val1 小堡垒 我需要在集合存储中搜索 名称字段上有文本索引 文档为 db stores insert id 1 name Java Hut description Coffee and cakes