作者kennykobe (凤山下智久)
看板Python
标题[问题] pymongo问题
时间Fri Apr 20 14:43:45 2018
目前有一个list,变数名称是config_project_uuid =
['8667f347-9bc1-4ad0-9905-4136a628cde6',
'8667f347-9bc1-4ad0-9905-4136a628cde6',
'e003d898-e52b-4549-99af-b3acc8338091']
cursor = collection.find({ "project_uuid": { "$in" : config_project_uuid }})
for document in cursor:
print (document)
可是找出来的结果只有两笔,因为list里面的第一笔跟第二笔是相同的
$in改成$all之後,反而找不出任何结果
有没有办法在list里面有重复的值时候,把所有的都找出来呢??
请教大神了,Thanks
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 122.146.87.216
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1524206629.A.C22.html
1F:→ aszx4510: for? 04/20 15:52
※ 编辑: kennykobe (122.146.87.216), 04/20/2018 16:09:03
用for in去跑,print出来的结果只有两笔
※ 编辑: kennykobe (122.146.87.216), 04/20/2018 16:14:33
2F:推 extraymond: 那如果用aggregate-match呢? 04/20 23:11
3F:→ aszx4510: for uuid in config_project_uuid: 04/21 01:31
4F:→ aszx4510: 这样子没办法跑出三笔结果吗? 04/21 01:32
5F:推 extraymond: {'$match':{'$or':[{'id':i} for i in [1,2,3]]}} 04/21 17:55
6F:→ extraymond: aggregate + list comprehension试试看 04/21 17:56
7F:→ aszx4510: 抱歉 我没注意是pymongo的问题 答非所问了QQ 04/22 00:12