我有一组用户,每个用户都可能订阅一项或多项服务。每个服务都有一些元数据,包括用户对该服务的信用数量。如果我无法知道服务对象的键是什么,我如何才能找到所有对某些服务的积分少于50的用户对象?从概念上讲,它会是这样的,这是行不通的:db.users.find({services.*.credits:{$lt:50}})用户集合:{_id:4f0ea25072139e4d2000001f,services:{a:{credits:100,score:2000},b:{credits:200,score:300},c:{credits:10,score:1300}}},{_id:4f0ea25