首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获得“猫鼬”中3个实体总数的百分比?取猫鼬的总数

获得“猫鼬”中3个实体总数的百分比?取猫鼬的总数
EN

Stack Overflow用户
提问于 2019-07-24 11:53:05
回答 1查看 186关注 0票数 1

我正在开发Node和Mongoose后端,我想计算出待决、在建和完整请求占请求总数的百分比。

我已经从db中获取了所有请求的数字,并将其除以100,但我也需要获得待处理、在制品和完整计数的计数。

代码语言:javascript
复制
totalcount: (req, res) => {
        UserRequest.countDocuments()

        .then(result => {
            if (!result) res.json({ success: false, result: "No result found"});

            res.json({success: true, result:  result / 100 });
        })
        .catch(err => res.json({success: false, result: err}))
    }

它应返回:

待决: 30% 在建中: 40% 完成:产出30%

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-07-24 12:14:47

使用异步等待。构建代码会更容易。

代码语言:javascript
复制
const mongoose = require('mongoose')
const Schema = mongoose.Schema
mongoose.connect("mongodb://localhost/stack-overflow", { useNewUrlParser: true })

const UserReqSchema = new Schema({
    type: "String"
})
const UserReqModel = mongoose.model("UserReq", UserReqSchema)

async function counterFun() {
    try {
        const totalCount = await UserReqModel.countDocuments({})
        const pendingCount = await UserReqModel.countDocuments({ type: "pending" })
        const inprogressCount = await UserReqModel.countDocuments({ type: "inprogress" })
        const completeCount = await UserReqModel.countDocuments({ type: "complete" })

        console.log("pendingCount", (pendingCount/totalCount)*100);
        console.log("inprogressCount", (inprogressCount/totalCount)*100);
        console.log("completeCount", (completeCount/totalCount)*100);
    } catch(error) {
        console.log(error)
    }
} 

counterFun()
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57182280

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档