搜索包含某些文本的文档,但保留有关哪些字段匹配的信息

时间:2015-07-22 11:36:52

标签: node.js mongodb search

我正在学习node.js和mongodb。我正在通过解决一些问题来学习。我想制作可以搜索视频数据库的网站。每个视频都有标题,描述,作者和一个注释子阵列(您可以将其视为注释)。每个注释都有一个子标签,用于标记集合中存在的标记文档。 我需要在视频集中搜索一些文字。对于每个结果视频,我需要知道搜索条件是否与某些基本字段(作者,标题,描述)匹配,或者是否其某些注释(包括标签名称)与标准匹配。或两者兼而有之。

我知道这对初学者来说可能不是正确的任务,但我真的很想做到这一点。我有一些关于如何做到这一点的想法,但它们可能并不好,因为我对mongo及其能力知之甚少。

你有什么建议,我该怎么用?我应该使用文本搜索功能+一些聚合吗?我应该卸载一些应用程序而不是mongo处理的工作吗?

我可能不需要细节,只需要指示。

谢谢。

1 个答案:

答案 0 :(得分:0)

由于没有人回答,我决定分享我的想法以及我是如何做到的。可能有更好的解决方案,就是我问这个问题的方式。

我使用正则表达式做了两个单独的查询,我在应用程序代码中合并了结果。 我使用ES6 Map来组合这两组。