草庐IT

query阶段

全部标签

mongodb - 在 $group 阶段聚合后匹配 _id

我在MongoDB中有以下场景:每条记录都有自己的_id和parentId。如果parentId==""那么它就是一个真正的父记录。如果parentId有一个值,那么该记录实际上是一个指向父记录的子记录。下面显示了一个父项及其链接的子项。{"_id":ObjectId('586c9d275d2f62e1634978db'),parentId="",count=1,}{"_id":ObjectId('586c9d275d2f62e163497811'),parentId=ObjectId('586c9d275d2f62e1634978db'),count=3,}我想要一个查询,在那里我找

mongodb - 如何加快聚合中的 $group 阶段

我的查询执行得太慢了:db.pmusers.aggregate({$unwind:'$preferableUsersIds'},{$addFields:{count:1}},{$group:{_id:'$preferableUsersIds',number:{$sum:"$count"}}},{$sort:{number:-1}},{$limit:1})我注意到$group是这个问题的原因。你能建议加快速度的方法吗?附言根据我读过的谷歌信息-添加索引无济于事我可以说我尝试了db.pmusers.createIndex({preferableUsersIds:1});和db.pmuser

node.js - 宇宙数据库 : MongoDB sort query returning blank resultset

我正在使用Mongoose.js4.11.6Node.js6.0。我有一个用户文档,如下所示-varUserSchema=newSchema({name:{type:String,default:''},email:{type:String,default:''},phone:{type:String,default:''},hashed_password:{type:String,default:''},role:{type:String,default:''},created_at:{type:Date,default:Date.now}});我正在运行以下mongoose查询-U

node.js - Mongo 使用 req.query.id Node 查找 id

我正在尝试使用req.query.id(我也使用过req.body)从url获取id,但它返回一个空数组,但如果我将变量放在第一位,我会得到包含数据的数组。`router.get('/:id',isLoggedIn,function(req,res){MongoClient.connect(url,function(err,db){if(err)throwerr;letid=req.query.id;db.collection("restaurant").find({_id:id}).toArray(function(err,result){console.log(result);re

node.js - "query"计算每个类别的帖子 expressjs mongoose

我是MERN堆栈的新手我试着写这个查询,但我不能,并且在没有任何解决方案的情况下在谷歌上搜索了很多我必须在第一个表中列出帖子,在第二个表中列出类别表1帖子--------------------------|id|title|category|--------------------------|1|title1|1||2|title2|2||3|title3|1||4|title4|1|=================表2类别---------------|id|name|---------------|1|cat1||2|cat2|====================我想要的

node.js - 蒙戈/ express : How to return all documents in collection if no query params are passed?

如果没有传递查询参数,我将尝试从我的Mongo集合中返回所有文档。目前我有3个可选的查询参数可以由用户传递。localhost:3000/api/projects//shouldreturnallprojects.Currentlythisisreturning[]localhost:3000/api/projects?id=1//shouldreturnprojectswithidof"1".Workingproperly.localhost:3000/api/projects?name=myproject//shouldreturnprojectswithnameof"myproj

transactions - 使用 MongoDB 进行两阶段提交

这就是我的想法。当使用像MongoDB这样的每个操作都是原子的并且不支持除此之外的事务时,您是否看到此解决方法有任何问题来模拟2阶段提交?transaction_scope:readmessagefromservicebus-UpdateCustomerAddressgetcustomeraggregatefromdocdb,replayeventswherecommited=1callcustomer.updateAddressvalidatescreatescustomeraddressupdatedeventapplyeventeventstoreasuncommittedeve

mongodb - 蒙戈 : querying for values nested in child arrays where keys are variable

我正在尝试构建一个Mongo查询,我可以在其中根据子数组中的值选择文档,其中嵌入数组的键会随着文档的不同而变化。在下面的示例中,我们有三个文档数组。提取每种酒的名称是微不足道的。当我想选择品尝结果大于20的Wine时,问题就来了。问题是我在运行查询时不知道航类名称;它可以是任何东西。因此,我不能只检查嵌入式数组的值。我想过类似的事情$ary_query=array('tasting_results.*'=>'$gt:20');但显然通配符在Mongo中不起作用(至少不是那样)。有什么想法吗?这是示例数组:ary_wines=array("name"=>"Ripple","year"=>

c# - FluentMongo LINQ : How to query a sublist of a class

假设我有这样一个类:publicclassBOa{publicObjectIdId{get;set;}publicstringName{get;set;}publicListVisiteEffettuate=newList();}publicclassBOvalues{publicDateTimeData{get;set;}publicintAge{get;set;}publicintScore{get;set;}}明确地说,在MongoDB中,我有许多BOa的集合。他们每个人都包含许多(一系列......)BOvalues我想知道如何使用FluentMongoLINQ(或其他方法)获

mongodb - Mongoose query.populate 只返回 objectId

当尝试填充一个字段时,所有返回的都是最初为该字段保存的objectid在models/gifts.jsvarGiftSchema=newSchema({name:String,owner:{user:{type:Schema.Types.ObjectId,ref:'User',required:false},nonRegisteredEmail:{type:String,required:false},nonRegisteredName:{type:String,required:false}},description:String,url:String}});module.expor