0
我有一个集合(Foo),它具有“关键字”字段。我想查找与给定字符串匹配的文档(至少有一个匹配关键字),并按匹配数排序。MongoDb:查找包含与给定字符串匹配的标签/关键字的文档
Foo:
{name: 'Foo1', keywords: ['example', 'sample', 'keywords']},
{name: 'Foo2', keywords: ['keywords example', 'find']},
{name: 'Foo3', keywords: ['search']},
{name: 'Foo4', keywords: ['example keywords', 'find', 'example', 'search']}
所以对于字符串"This is example keywords search"
应该返回顺序文件:
- Foo4(3场比赛 - '例如关键字', '示例', '搜索')
- Foo1(2场比赛 - '例如', '关键字')
- Foo3(1场比赛 - '搜索')
我使用Symfony3和DoctrineODM如果它使广告。差分。谢谢大家的帮助!
[查找包含特定值的数组的文档]的可能重复(https://stackoverflow.com/questions/18148166/ find-document-with-array-that-contains-a-specific-value) – Severin
@Severin我没有看到你的链接与我的问题相似,因为我有字符串作为输入,它不能简单地分解为单个单词 – Sycu
你有没有尝试过任何东西,或者只是抛出一个任务,希望有人能解决它? – malarzm