mongodb - MongoDB,查找属性 id 等于记录 id 的所有文档
问题描述
我有这样的收藏:
{
"_id" : ObjectId("546089aaf83a94de268a35c3"),
"parent" : {
"$ref" : "someRef",
"$id" : ObjectId("546089aaf83a94de268a35c3"),
"$db" : "someDB",
}
}
如何查找 _id 等于 parent.id 的所有记录?
试过find({"parent.$id": "_id"})
但显然不可能
解决方案
这里parent
包含数据库参考。因此我们需要调用引用的getter方法来获取它的对象ID。
以下查询可以为我们提供预期的输出:
db.collection.find({
$where: function(){
return this._id.toString() == this.parent.getId().toString();
}
}).pretty()
推荐阅读
- elasticsearch - ElasticSearch 范围查询
- css - 平板电脑上的 Firefox 正在为输入添加一个蓝色指针
- schema.org - mainEntityOfPage 模式的正确用法是什么
- git - Git如何检查连接到哪个repo项目
- angular6 - 非法状态:无法加载指令 AppComponent 的摘要
- android - Android Studio 与 GitHub 组织整合
- java - Preferences.flush() 和 Preferences.sync() 有什么区别?
- c# - 命名空间“Microsoft.Bot.Builder”中不存在类型或命名空间名称“Dialogs”
- javascript - 如何从 youtube api 获取值?
- java - javax.crypto.BadPaddingException:解密错误,