我有一个名为people
.
我知道我可以这样做:
db.people.find( { $where: "this.lastname == this.firstname" } );
但我怎么能做这样的事情:
db.people.find( { $where: "this.lastname == Acquaintances.lastname" } );
人工翻译:所有至少有一个熟人同名的人。
Acquaintances 是一组子文档。
我有一个名为people
.
我知道我可以这样做:
db.people.find( { $where: "this.lastname == this.firstname" } );
但我怎么能做这样的事情:
db.people.find( { $where: "this.lastname == Acquaintances.lastname" } );
人工翻译:所有至少有一个熟人同名的人。
Acquaintances 是一组子文档。
mongodb$where
命令类似于map reduce
,它在提取的数据上处理 javascript 表达式。它只适用于运行缓慢的后台作业。在任何正常情况下都不要使用它。
function () {
var arr = [];
for (i in this.Acquaintances) {
arr.push(this.Acquaintances[i].lastname);
}
return arr.indexOf(this.lastname) > -1;
}
db.people.find(f)
检查此链接以获取更多信息$where