MongoDB 对某列去重后,查询该列对应的另外一值是否都为 xx
資深大佬 : Te11UA 3
数据形如
[ {'status':'ok','message_id': '1', 'group_id':1}, {'status':'bad','message_id': '2', 'group_id':1}, {'status':'ok','message_id': '1', 'group_id':2} ],
需求是要判断当前库中同一 group 的 status 都为 ok,有一个 bad 则返回 False 。由于不太熟悉 MongoDB,使用了比较难看的做法:
group_ids = db.tasks.distinct('group_id') for group_id in group_ids: ____status = db.tasks.find_one({'group_id': group_id, 'status': 'bad'}) ____return False if task else True
请问大佬们,有什么好的办法可以完成这个需求呢
大佬有話說 (3)
没判断全是 bad