草庐IT

mongodb - 在mongodb中计算百分比

我的数据库看起来像:{{user:bob,votes:63}{user:jack,votes:27}{user:john,votes:10}}我可以得到总票数,但我不知道如何让每个人的票数占总票数的百分比。例如;jack将获得27%的选票。[{'$group':{'_id':'','totalofvotes':{'$sum':'$votes'},'%votesperperson':{'$multiply':[{'$divide':["votes",{'$sum':'$votes'}]},100]}},}] 最佳答案 你不能在单个小组

mongodb 获取具有最高值的文档/子文档

我有一个像这样的评论集合{_id:'c1',text:'comment1',votes:1,replies:[{_id:'r1',text:'reply1',isReply:true,votes:3},{_id:'r2',text:'reply2',isReply:true,votes:0}]},{_id:'c2',text:'comment2',votes:2,replies:[]}想法是一条评论可以有很多回复。所有评论和回复都有id、text、votes。我怎样才能获得最好的2条评论或获得最多投票的回复。在给定的情况下,这将是“回复1”和“评论2”。我可以向mongodb发送1个请

javascript - 文档和子文档的 $sum 按 "$author"(MongoDB)

这是我的收藏:{"_id":10926400,"votes":131,"author":"Jesse","comments":[{"id":1,"votes":31,"author":"Mirek"},{"id":2,"votes":13,"author":"Leszke"}]},{"_id":10926401,"votes":75,"author":"Mirek","comments":[{"id":1,"votes":17,"author":"Jesse"},{"id":2,"votes":29,"author":"Mirek"}]}我想要每个author的$sumvotes和co

javascript - 按数组大小对结果排序

我有一个名为article的集合,我需要根据它包含的数组的大小对返回的对象进行排序。做这个的最好方式是什么?我想到的一个是检索整个对象列表并在JS中手动对其进行排序。但我一次返回10篇文章,因此每次调用此API时,它都必须执行不必要的数组排序工作。Article.find({}).limit(10).skip(req.params.page*10)//Somethinglikeusing$projecttomakeanewvariablecalledvotecountthatcountsobjectsinagivenarray..sort({votecount:-1}).exec(fu

javascript - MongoDB => findOne 或 find 查询下一个对象? ( meteor / react )

想要找到与当前相关的下一个和上一个对象。这就是我的this.props._id=currentId;//Fetchcurrentobjectdatadata.video=Videos.findOne({_id:this.props._id});//Usingvotesstringfromobjectabovetofindmeobjectsdata.next=Videos.findOne({votes:{$gte:data.video.votes}});data.previous=Videos.findOne({votes:{$lte:data.video.votes}};我知道这是不正

mongodb - mongoose - 按数组长度排序

我有这个模式varPostSchema=newSchema({title:{type:String,trim:true},description:{type:String,trim:true},votes:[{type:Schema.ObjectId,ref:'User'}]})我想根据投票对帖子进行排序,即我需要按数组长度排序。按常规方法试了,还是不行PostSchema.statics.trending=function(cb){returnthis.find().sort('votes',-1).limit(5).exec(cb)}有什么帮助吗?我使用的mongoose版本是2.

mongodb - 按数组长度排序

如何根据数组字段的元素数量对查询进行排序?假设我有这样的记录{title:'',author:'',votes:[id,id,id]}我想按投票数组的长度排序 最佳答案 在$size的帮助下使用聚合框架MongoDB2.6及更高版本的运算符:db.collection.aggregate([//Projectwithanarraylength{"$project":{"title":1,"author":1,"votes":1,"length":{"$size":"$votes"}}},//Sortonthe"length"{"$s

mysql - 具有多个 where 和 order by 子句的慢查询

我正在尝试寻找一种方法来加速缓慢的(文件排序)MySQL查询。表格:categories(id,lft,rgt)questions(id,category_id,created_at,votes_up,votes_down)示例查询:SELECT*FROMquestionsqINNERJOINcategoriescON(c.id=q.category_id)WHEREc.lft>1ANDc.rgt如果我删除ORDERBY子句,它会很快。我知道MySQL不喜欢在同一个子句中同时使用DESC和ASC命令,所以我尝试添加一个复合(created_at,votes_up)索引到question

php - 贝叶斯评分设置

我正在考虑如何开始在MYSQL中设置贝叶斯评级系统。我没有使用5星评级,而是类似的评级。我的是5音量条。这是我的专辑页面。用户不会对专辑进行评分,而是会对歌曲进行评分,这些歌曲将被平均成为专辑评分。$songsum$songavg$numofrated$totalsongs$albumrating$songsum/$numofrated=$songavg$songavg*($numofrated/$totalsongs)=$albumrating另一个页面(艺术家页面)也将被评级。$avg_num_votes=18;//Averagenumberofvotesinallproducts

javascript - 如何使 bootstrap Voting 片段起作用,改变 MySQL 中的值

我正在尝试在我的HTML/PHP/MySQL的侧边栏中添加投票/投票面板网站。场景我在MySQL数据库表中有不同地点的计划列表,当有人搜索该地点时,他们也会看到为该地点决定的计划列表。他们可以投票决定下一步在那个地方执行什么计划。到目前为止我做了什么?当观众搜索任何地点时,我能够获取特定地点的计划。使用的代码:Votenextplan';echo'';echo'';echo'';echo$planvote['plan_name'];echo'';echo'';echo'';}?>VoteViewResult截图现在,我有一个包含列的数据库表|sn|plan_name|poll||1|P