我有一个集合,其中包含客户名称和他们各自阅读的书籍列表。我在书名上添加了全文索引
clients.ensure_index([("books.title",pymongo.TEXT)])
有些客户读了一本书,有些读了100本。
我遇到了问题:
我需要确切地知道全文搜索匹配哪个书名。例如,如果我搜索" olive",就像这样......
clients.find({"$text": {"$search": "olive"}})
这会向我返回每场比赛的完整文档,但它并不能告诉我哪个书名是匹配的。
我的第一个想法是通过搜索结果迭代并自己找到完全匹配,但后来我意识到Mongo会做各种词干和其他查询规范化技术。
这意味着"橄榄"将匹配"橄榄" ..等
这意味着即使我遍历全文查询的结果并尝试自己找到匹配的书名,我也许找不到它!由于查询规范化。
那么,我怎样才能找出匹配的书名?
这是Mongo的限制吗?