草庐IT

mongodb.driver

全部标签

Mongodb聚合,如何组合或合并字段然后计数

我在一个集合中有property(home)数据。每个家庭可以有多个所有者,并存储为单独的字段,例如{home:1,owner1:Fred,owner2:Jason,owner3:Stan}我想获得前X个所有者姓名的列表。作为mongodb的新手,我能够改编一个基本示例来聚合和计算一个字段(owner1),但我不知道如何组合owner1、owner2、owner3的名称然后进行计数。我现在使用pymongo有什么x=data2009.aggregate([{"$group":{"_id":"$OWNER1","value":{"$sum":1}}},{"$sort":{"value":

mongodb - 使用脚本创建多个索引

如何使用脚本/文件创建多个索引,以便我可以在shell中运行它并在一个操作中创建所有索引?此处列出了信息:http://docs.mongodb.org/manual/tutorial/write-scripts-for-the-mongo-shell/我是否创建了一个javascript文件(.js),然后像这样依次列出所有ensureIndexes:db.data1.ensureIndex(..)db.data2.ensureIndex(..)db.data3.ensureIndex(..)db.data4.ensureIndex(..)这在语法上是否正确?这会编译吗?

c# - 使用 MongoDB 的 Linq 查询不能像 Func 那样工作

我在MongoDB集合上构建了一个Linq查询,它可以正确检索我的文档:varparts=mongoParts.AsQueryable().Where(mongo=>mongo.Prop1==bmbMatch.Prop1&&mongo.Prop2==bmbMatch.Prop2).ToList();这工作正常,但为了减少代码,我写了一个通用函数,接受一个Funcselector它采用与上面Where子句中完全相同的lamdba表达式,这使得它:varmongo=mongoQuery.AsQueryable().Where(tmongo=>selector(tmongo,localMat

mongodb - 将元素从 $pull 移动到另一个数组

我在同一个集合中有很多这样的文档:{"_id":ObjectId("4d525ab2924f0000000022ad"),"array":[{id:1,other:23},{id:1,other:21},{id:0,other:235},{id:1,other:765}],"zeroes":[]}我希望它们看起来像这样:{"_id":ObjectId("4d525ab2924f0000000022ad"),"array":[{id:1,other:23},{id:1,other:21},{id:1,other:765}],"zeroes":[{id:0,other:235}]}基本上,

mongodb - 如何知道mongodb是否需要认证?

当您尝试根据数据库对用户进行身份验证时,如果mongod未使用--auth参数启动,我会收到错误消息:身份验证失败!那么有没有办法知道数据库是否需要认证呢?类似的东西:DBdb=moClient.getDB(moClientURI.getDatabase());if(db.needsAuthentication()){db.authenticate(username,password.toCharArray());if(db.isAuthenticated()){//dosomething}else{}//authenticationfailed} 最佳答案

MongoDB、NUMA 硬件、页面错误但有足够的 RAM 用于工作集、touch 命令或 vmtouch/dd 未加载到内存中

MongoDB2.46&2.4.8用例:在具有2个索引的集合中加载100.000个文档。驻留内存增加(mongostat),没有发生页面错误。重启mongod。驻留内存不足(这是预期的)尝试使用touch命令db.runCommand({touch:collection,data:true,index:true})或其他方式(在操作系统上,vmtouch/dd)a)在此步骤中,在我的开发机器(MacOS)上,我在mongostat中看到许多页面错误试图加热它(预期)并提高常驻内存。从那时起,任何更新都不会引发页面错误b)在numa服务器(256GBRAM)上,即使我按照以下指南启动了m

php - 使用 mongodb 和 php 查找最近的餐厅位置

我在MongoDB中有一个名为restaurants的集合{"_id":ObjectId("5281f8d660ad39040c000001"),"name":"BuckstersCoffee","serves":"FastFood","location":["23.755339","90.375408"]}{"_id":ObjectId("5285cf0860ad39380b000000"),"name":"A1Donuts","serves":"FastFood","location":["18.5087016","73.8124984"]}{"_id":ObjectId("528

mongodb - Meteor + Mongodb : is there a way to fully exclude some subdocuments from db. find() 的结果?

通过指定fields参数,可以轻松管理db.find()结果集中某些字段的存在(我使用Meteor并在服务器端测试所有查询,在发布功能中)。说Meteor.collection.find({},{fields:{'a':false}})告诉Mongo从结果集中排除字段a。但是,如果a是一个子文档,这将不起作用。比如,它有两个字段:x和y。如果我指定{'a.x':false},则排除其中一个字段,但不排除另一个。如果我添加{'a':false},什么也不会发生。问题来了:有什么方法可以从结果集中过滤掉位于文档的某些特定子文档中的所有字段? 最佳答案

mongodb - 设计 mongodb 模式使用嵌入还是引用?

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭8年前。Improvethisquestion我想设计一个包含一些消息的用户结构,但我不知道消息使用哪种关系:嵌入还是引用?结构如下:使用嵌入:{"_id":ObjectId("5285a6449df8156c1b000fa3")"name":"LeeNC","message":[{"_id":ObjectId("5285a6449df8156c1b0002ed"),"message":"message1","date":ISODate("2013-

mongodb - 离心机不使用 MongoDB?

我刚刚安装了离心机(https://centrifuge.readthedocs.org/en/latest/)并创建了一个configuration.json文件并将其放在/var/www/文件夹中。当我尝试运行离心机centrifulconfig=/var/www/configuration.json时,服务器启动。但是,当我转到管理面板中的默认路径http://localhost:8000时,它一直说DataStructureusedasSQLite。这是我的configuration.json文件{"password":"admin","cookie_secret":"secr