MongoDB-在ObjectId上聚合$ match

约旦

我有一个看起来像这样的架构:

var mongoose = require('mongoose');

module.exports = mongoose.model('Owner',{
    username: String,
    blocks: {type:mongoose.Schema.Types.ObjectId, ref: 'Block'},
});

我正在尝试运行查询以查看所有者是否具有对Block的ID的引用。所有者具有一个ObjectId数组。当我运行db.owners.aggregate({$match: {username: 'example'}},{$unwind: "$blocks"},{$project: { _id : 1,blocks: 1}})它返回:

{ "_id" : ObjectId("550d9dc64d9dc3d026fadfc7"), "blocks" : ObjectId("550dc117dc9605ab27070af7") }
{ "_id" : ObjectId("550d9dc64d9dc3d026fadfc7"), "blocks" : ObjectId("550dc123dc9605ab27070af8") }
{ "_id" : ObjectId("550d9dc64d9dc3d026fadfc7"), "blocks" : ObjectId("550dc12edc9605ab27070af9") }
{ "_id" : ObjectId("550d9dc64d9dc3d026fadfc7"), "blocks" : ObjectId("550dc157dc9605ab27070afa") }

如何匹配区块ID?我已经尝试过了,db.publishers.aggregate({$match: {username: 'example'}},{$unwind: "$blocks"},{$project: { _id : 1,blocks: 1}},{$match : {"blocks._id" : '550dc157dc9605ab27070afa'}})但是没有用。

鄂尔多斯语

我认为您不需要这样做,可以使用简单find()findOne()查询:

var Mongoose = require('mongoose');
var ObjectId = Mongoose.Types.ObjectId;

Owner.findOne({ username: 'example', blocks: new ObjectId('550dc157dc9605ab27070afa') }, function (err, owner) {
   ...
});

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

MongoDB聚合$ lookup $ match

来自分类Dev

MongoDB聚合$ match与$ or

来自分类Dev

使用 ObjectId 的 mongodb 聚合查找

来自分类Dev

无法开始$ match和$ group MongoDB聚合

来自分类Dev

MongoDB聚合以实际文档替换ObjectId数组

来自分类Dev

在MongoDB中将Match exp与objectId一起使用

来自分类Dev

使用带有$ lookup和$ match的聚合的搜索查询mongodb

来自分类Dev

MongoDB聚合查询优化:$ match,$ lookup和double $ unwind

来自分类Dev

环回上的MongoDB聚合

来自分类Dev

MongoDB聚合项目字符串转换为ObjectId

来自分类Dev

从String到ObjectId的Spring数据MongoDb聚合查找

来自分类Dev

MongoDb聚合$ match错误:“参数必须是聚合管道运算符”

来自分类Dev

using $and with $match in mongodb

来自分类Dev

MongoDB $ lookup和$ match

来自分类Dev

MongoDB:“ $ match聚合表达式中不允许使用$ where

来自分类Dev

如何在mongodb中的聚合中使用$ match作为可选参数

来自分类Dev

如何在MongoDB聚合中添加来自不同集合的多个$ match条件

来自分类Dev

MongoDB聚合:在$ match $或查询中使用当前文档的字段值

来自分类Dev

MongoDB-如何在聚合的$ match中比较不同集合的字段?

来自分类Dev

在MongoDB $ match聚合阶段是否可以按嵌套数组对象的字段过滤?

来自分类Dev

数组上的Mongodb聚合查询项目

来自分类Dev

聚合查询上的Mongodb填充字段

来自分类Dev

MongoDB 聚合在索引字段上很慢

来自分类Dev

MongoDB - 在集合数组上聚合

来自分类Dev

多个嵌套数组上的 MongoDB 聚合

来自分类Dev

与mongodb聚合

来自分类Dev

在mongodb中使用$ and和$ match

来自分类Dev

MongoDB $ match和$ group问题

来自分类Dev

Mongodb-$ match中的$ cond

Related 相关文章

热门标签

归档