mongodb全文搜索建议多个单词

发布于 2024-12-03 12:45:00 字数 716 浏览 0 评论 0原文

我正在尝试对我的 mongodb 集合之一进行某种形式的全文搜索(例如 flowdock)。 我为每个文档创建一个 _keywords 条目,并使用该文档中其他字段中的小写单词填充它。然后我像这样搜索它(前缀搜索)例如。 searchString = 'car'

found_shots = connection.Shot.find({'_keywords': re.compile('^%s' % searchString.lower())}).limit(limit).skip(skip)

问题是当我尝试搜索多个单词时(例如 searchstring= ['car','online']

regex1 = re.compile('^%s' % searchStrings[0].lower())
regex2 = re.compile('^%s' % searchStrings[1].lower())
found_shots = connection.Shot.find({'$and':[{'_keywords':regex1},{'_keywords':regex2}]}).limit(limit).skip(skip)

这不起作用。有什么想法吗?

I am trying to have some form of fulltext search for one of my mongodb collections (a la flowdock).
I create a _keywords entry for each document and populate it with lowercased words from the other fields in that document. I then search it like this (prefixed search) ex. searchString = 'car'

found_shots = connection.Shot.find({'_keywords': re.compile('^%s' % searchString.lower())}).limit(limit).skip(skip)

The problem is when I try to search on multiple words ( ex. searchstring= ['car','online']

regex1 = re.compile('^%s' % searchStrings[0].lower())
regex2 = re.compile('^%s' % searchStrings[1].lower())
found_shots = connection.Shot.find({'$and':[{'_keywords':regex1},{'_keywords':regex2}]}).limit(limit).skip(skip)

That does not work. any ideas please?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

甜警司 2024-12-10 12:45:00

$and 仅在 1.9.x 中可用。

由于您使用的是 1.8.2,因此它无法正常工作。

如果您升级,您将获得最新的命令集,并且您将能够使用 $and 命令。

$and is only available in 1.9.x.

Since you are using 1.8.2 it does not work correctly.

If you upgrade you will get the latest set of commands and you will be able to use the $and command.

热风软妹 2024-12-10 12:45:00

MongoDB 2.6 现在可以允许使用 $text 命令结合 FTS 索引进行全文搜索。

MongoDB 2.6 can now allow full text searching using the $text command combined with a FTS index.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文