Това е истинският отговор на вашия въпрос.
Как можете да намерите всички потребителски обекти, които имат по-малко от 50 кредита за дадена услуга, ако няма начин да знаете какви ще бъдат ключовете на сервизните обекти, е както следва.
Използвайте заявка $where:
db.users.find({
$where: function () {
for (var index in this.services)
if (this.services[index].credits < 50)
return this;
}
});