草庐IT

promised-mongo

全部标签

mongodb - mongo点符号歧义

我喜欢MongoDB,我突然想到了一个小的歧义,我想知道是否有人以前见过这个并且可能会知道答案:-)。在mongo中,要访问子对象,您可以使用点符号,例如:db.persons.find({"address.state":"CA"})这很简单。mongo如何(如果有的话)处理以下之间的区别:{"address"{"state":"CA"}}和{"address.state":"CA"}据我所知,点在键中是合法的。此外,我相信这也是一份法律文件:{"address"{"state":"A"},"address.state":"B"}在这种情况下,我可以看到此查询返回"A"或"B":db.

node.js - NodeJS Mongo - Mongoose - 动态集合名称

所以,我想创建一个基于客户端的分区模式,我将集合名称设置为function(),我的伪代码是这样的:varmongoose=require('mongoose'),Schema=mongoose.Schema,varConvForUserSchema=newSchema({user_id:Number,conv_hash:String,archived:Boolean,unread:Boolean},functionCollectionName(){return(this.user_id%10000);});是否可以通过moongose以任何方式实现读取和写入都按预期工作?

node.js - 如何使用 Waterline Adapter for Mongo 在 Sails.js 中使用搜索修饰符 "OR"

编写以下代码以获取在“名称”或“描述”中包含“sometext”的记录。这似乎不起作用。谁能提供一个正确的方法来实现“OR”搜索旁注:“AND”功能有效。“或”功能不起作用。使用sailsjs和sails-mongo版本0.94。Model.find({where:{or:[{name:{contains:req.param('sometext')}},{description:{contains:req.param('sometext')}}]},limit:15,skip:0,sort:'nameASC'},callback) 最佳答案

mongodb - 同一集合中的重复 mongo 记录

在mongo中,我有一个带有记录的集合。这些记录非常复杂。现在我想复制其中一个。我可以很容易地选择一个mongo>varrow=db.barfoo.find({"name":"bar"});现在我真的不知道该怎么办了。我不知道row中有什么,因为我找不到打印其内容的方法。我怎样才能更改特定的属性并最终再次插入这个修改过的行mongo>db.barfoo.insert(row);谢谢 最佳答案 您必须更改值_id-生成新的:varrow=db.barfoo.findOne({"name":"bar"});row._id=ObjectI

arrays - 在数组中查找包含空对象的 mongo 文档

我有一个带有数组属性的Mongo集合,数组中有“空”对象。我可以使用什么查询来定位这些只有{}的非空数组?我尝试了$exists和$where的组合,但没有成功。我需要定位的数据示例:"arrayProperty":[{}]和"arrayProperty":[{},{}]编辑:这是架构的示例:{"_id":ObjectId("53b1ca583d597ce7cbd54646"),"arrayProperty":[{"serialNumber":"abc123","rfid":"xyz098","size":95,"points":50,"frequency":"Everyday","d

mongodb - 不区分大小写的 Mongo $in 查询

我正在使用Mongoose.js执行$in查询,如下所示:userModel.find({'twitter_username':{$in:friends}})friends只是一个字符串数组。但是,我遇到了一些大小写问题,想知道是否可以使用Mongo的$regex功能使这个$in查询不区分大小写? 最佳答案 来自docs:Toincludearegularexpressioninan$inqueryexpression,youcanonlyuseJavaScriptregularexpressionobjects(i.e./patt

mongodb - 未定义 ObjectID。无法在 Mongo Shell 中按 ID 找到对象

我试图用谷歌搜索我的简单问题,但找不到答案。我无法通过它的ObjectId找到任何对象。db.user.find({_id:ObjectID("57fa0a15cf1e8c0e571e1a52")})ReferenceError:ObjectID未定义为什么?怎么了? 最佳答案 应该是ObjectId()而不是ObjectID()https://docs.mongodb.com/manual/reference/method/ObjectId/ 关于mongodb-未定义ObjectID

mongodb - 如何向 Mongo 聚合结果添加新字段?

我有以下mongodb聚合查询,按日期分组(1-05-2017到1-13-2017)CampaignActivity.aggregate([{"$match":{"$and":[{updatedAt:{$lt:newDate('1-13-2017')}},{updatedAt:{$gte:newDate('1-05-2017')}}]}},{"$project":{_id:0,"datePartDay":{"$concat":[{"$substr":[{"$dayOfMonth":"$updatedAt"},0,2]},"-",{"$substr":[{"$month":"$updat

node.js - 蒙哥错误: must have $meta projection for all $meta sort keys using Mongo DB Native NodeJS Driver

直接在MongoDB上运行以下文本搜索不会产生任何问题:db.getCollection('schools').find({$text:{$search:'somequerystring',$caseSensitive:false,$diacriticSensitive:true}},{score:{$meta:"textScore"}}).sort({score:{$meta:"textScore"}})然而,当尝试使用nativeNodeJSdriver运行相同的查询时:functiongetSchools(filter){returnnewPromise(function(res

database - 如何仅查找mongo中的特定字段

如何只加入特定字段?使用$lookup时,mongo返回整个文档。假设这是我的数据:用户[{id:0,name:"Bob",adj:1},{id:1,name:"Will",adj:2},]形容词[{id:1,name:"awesome"},{id:2,name:"cool"},]我想做一个查找,所以响应应该是这样的:[{id:0,name:"Bob",adj:1,adj_value:"awesome"},{id:1,name:"Will",adj:2,adj_value:"cool"},]这是我的尝试db.collection('users').aggregate([{$lookup