如何在mongodb(在python中)“查找”文档,其中子字符串存在于字符串列表的字段中?

时间:2016-02-07 01:15:10

标签: python mongodb pymongo

我有许多类似

的mongodb文件

veg_doc1 = {........,      veg_name:[豆,豆,红豆,红萝卜,萝卜......],      ...... }

veg_doc2 = {........,       veg_name:[豆,黑豆,白菜,棕豆,gorbanzo豆,有机胡萝卜,红胡萝卜,.....],       .......... }

veg_doc3 = {....,       veg_name:[卷心菜,beatroot,豆类],    ........ }

我可以设计一个查询来获取所有具有“bean”和&的文档。说“胡萝卜”作为“veg_name”字段中的元素(基本上是带有“和”操作的一个或多个项目)?我应该能够选择所有那些元素(在本例中为bean和胡萝卜)是子串的名称(应该包括说豆,黑豆,豆类,胡萝卜,红胡萝卜等,还有那些等等)。

所以如果我用('bean','胡萝卜')查询上面的内容 - 我应该回到veg_doc1和veg_doc2而不是veg_doc3。

有人可以帮助我吗? (我使用的是python / pymongo)

我这样做

veg_regex ='[* bean | * carrot]' 对于db.veg_collection.find中的sanc_doc({'vegetables':{'$ in'{'$ regex':veg_regex}}}):     打印(sanc_doc [ '蔬菜'])

这不起作用:-(要么我在正则表达式中做错了,要么在查询中出错了,或者两者都可能: - (

0 个答案:

没有答案