草庐IT

null-propagation-operator

全部标签

MongoDB:$unset 替换为 null?

我的文档中存储了一个数组:"properties":[{"createdate":1375981035,"updated":1375981035},{"accessdate":1375981035,"updated":1375981035},{"code":"4ffa04fe06000000","updated":1375981038}],执行更新以取消设置属性“代码”:db.coll.update({'properties.code':'4ffa04fe06000000'},{'$unset':{'properties.$':1}});我的结果是这样的:"properties":[{

Mongodb in operator in find 查询

我有一个如下所述的查询。varprojstat=['A','B'];Post.native(function(err,collection){if(err)console.log(err);collection.find({'status':{"$in":projstat}},{multi:true},function(err,result){console.log(result);if(req.isSocket){returnres.json(result);}});});如果我错了,请纠正我,因为它不会返回任何结果。请帮忙。 最佳答案

mongodb - Morphia MongoDB 检查 null 和不存在的字段

我是Morphia和MongoDB的新手。有没有办法使用Morphia检查我的数据库中的某个字段不是null并且也存在。例如,来自数据库中用户集合的用户的以下记录:{"_id":ObjectId("51398e6e30044a944cc23e2e"),"age":21,"createdDate":ISODate("2013-03-08T07:08:30.168Z"),"name":"Somename"}我如何使用Morphia查询来检查字段"createdDate"是否不为空且存在。编辑:我正在寻找Morphia的解决方案。到目前为止,我想出了这个:query.and(query.cr

php - 在 php 返回 null 的 mongodb 中聚合查询

我在rockmongotools-command中运行了这个命令及其返回的正确值{aggregate:"twits",pipeline:[{$group:{_id:"$by",num_tutorial:{$sum:1}}}]}然后我尝试使用它从中提取值define("__COLLECTION_TWITS__","twits");在/var/www/html/TradeTwits/require/config/DBConfig.inc.php$collectionName=__COLLECTION_TWITS__;$db=$this->connection("mo");$col=$db-

c# - 通过线程经济的可扩展性 : async operations vs. 线程池上的多线程生产者/消费者队列?

异步编程是一种通过线程经济实现Web服务器可扩展性的方法,因此很少的非阻塞线程可以处理许多同时发生的请求。例如,Node.js使用异步操作仅使用单个线程即可实现可伸缩性。我目前正在使用数据库MongoDb,它是官方的C#驱动程序,尚不支持异步操作。因此,我正在考虑使用一个简单的生产者/消费者队列来处理mongodb请求,以减少阻塞线程的数量。这是通过让线程池线程在队列中插入数据库请求然后让它们继续执行其他任务来完成的。该队列还有一个专用线程执行实际的数据库请求,当请求返回结果时,结果将移交给线程池线程。但是,我现在想知道在使用线程池时是否有必要使用队列(通过C#4.0中的TPL和任务)

mongodb - 如何确定平均值是 0 还是 null?

我有一个Mongo数据库,我在其中运行一些聚合查询。这是我要运行的简化查询:db.coll.aggregate([{$group:{_id:'fieldA',fieldB:{$avg:'$fieldB'}}},])它按fieldA对数据进行分组并计算fieldB的平均值。无论如何,结果集中的某些行将0作为fieldB的值。可能有两个原因:平均值为0。组中的所有文档都没有fieldB(或者值为null);在这种情况下,Mongo的行为是返回0。是否可以在不发出其他查询且不离开聚合管道的情况下确定结果选择中每一行发生的情况?更新我无法过滤掉非空字段,因为我正在对几个字段进行聚合,例如:db

node.js - 按日期排序,null 在前

我正在尝试在集合中查找按日期排序的文档。这行得通,但我在底部的日期字段中得到了带有null的文档,我首先想要这些。MyModel.find({},null,{sort:{date:-1}},function(err,models){//Modelssortedwiththe"largest"datefirstandmodelswithnulldateslast});如果我将排序更改为{date:1}我首先会得到带有null的文档,但否则顺序是相反的,这是我不想要的.我怎样才能实现预期的行为? 最佳答案 不幸的是,似乎没有简单的方法可

python - Python 中 datetime.datetime 对象的正确 None 或 null 条目是什么?

我正在使用pymongo将一些日期加载到mongodb中。因为pymongo会自动转换为BSON,所以我正在使用datetime的datetime.strptime函数将输入字符串(如“12/04/2013”​​)转换为Date对象,如下所示:>>>datetime.datetime.strptime("12/04/2013",'%m/%d/%Y')datetime.datetime(2013,12,4,0,0)这样它们就可以使用标准的mongo查询进行搜索。我的问题是:我还想表示我不知道某个日期是什么日期,相当于None,所以我可以做Nonenull-对其进行测试。我意识到我可以通过

node.js - Mongoose 错误 : Arguments must be aggregate pipeline operators

我无法通过聚合选项参数获得结果。这是我的聚合:-varemails=getAllEmails();varlistMatchColl='list_matches_'+insertedId;SurveyDL.aggregate([{$match:{email:{$in:emails}}},{$out:listMatchColl}],{allowDiskUse:true}).exec(function(err,data){if(err)returnconsole.log('err',err);console.log('data',data);});}当我执行上面的代码时,它抛出了错误,即Er

Node.js:Mongoose initializeUnorderedBulk 返回 null

不久前,我设法编写了一种方法,可以将许多信息批量更新插入到我的数据库中。现在我正在尝试做的是一种清除同一数据库和表上的旧记录的方法。raidSchema.statics.bulkUpsert=function(raids,callback){varbulk=Raid.collection.initializeUnorderedBulkOp();for(vari=0;i这非常有效。然后我这样做了,希望它能清除我不再需要的旧记录:raidSchema.statics.cleanOldRaids=function(callback){vardate=newDate();date.setMin