需要mongodb的搜索查询

时间:2016-09-08 12:25:45

标签: node.js mongodb

如果关键字为红色衬衫,则结果集应为

如果我使用此查询<pre><?php print_r($items); ?></pre> 得到结果

  

购买这款橙色colou 红色衬衫面料,随处可见   这种面料来自Fashion Foreplus的领导者   时尚商店棉混纺和充满活力的柔和色彩给你带来了哟

但我需要结果

  

购买这款红色橙色面料,随处可见   这种面料来自Faslike的衬衫

如果给定的关键字位于不同的位置,即使我应该得到结果。

2 个答案:

答案 0 :(得分:0)

您可以使用此查询

db.collection('collection').find({ProductName:new RegExp('red shirt', 'i')})

答案 1 :(得分:0)

这不会工作@kalyan Manthena。原因:

检查产品描述:购买这款橙色衬衫面料,随处可见这款面料来自Fashion Foreplus的家居领先男士时装店棉质混纺和活力柔和的色彩带来哟。

现在假设文本索引构建在“产品描述”字段上,并且您运行

的查询

db.yourCollection.find({$ text:{$ search:&#34; red shirt&#34;}})

会做干预并尝试在描述中匹配红色和衬衫,虽然它没有找到红色(作为一个单词)它确实找到了衬衫并且给出了整个描述。

你的例外结果:购买这款红色橙色面料,随处可见这种面料来自Faslike的内衣

您的收藏中的任何产品是否都存在此文字? Mongo无法为您构建文本。它只能查询系统中的内容。