php - MongoDB - 组合多个命令来发送和返回一个请求

标签 php javascript mongodb

我目前在 PHP 和 Javascript 中使用 MongoDB。我想做的是将以下 MongoDB 命令组合到一个请求中,然后将其作为一个请求返回,以避免我在 Javascript 的 AJAX 中遇到的一些错误。我该怎么办?下面是我想放入其中的命令示例(以 Mongo 形式)。感谢您的帮助!

db.colcName.find({"location": "London"})
db.colcName.count({"provider": "provider1"})
db.colcName.count({"provider": "provider2"})
db.colcName.count({"provider": "provider3"})
db.colcName.count({"provider": "provider4"})

最佳答案

使用 MongoDB 的 aggregation framework .

要在单个操作中计算示例中的计数,请使用:

db.colcName.aggregate([
   {"$match":{"location":"London"}},
   {"$group":{"_id":"$provider",
              "count":{"$sum":1}}}]);

此聚合管道首先仅选择“location”等于“London”的那些记录,然后按“provider”字段(注意字段名称前面的 $ 符号)对这些记录进行分组。对于每个组,它计算计数(记录数)。

关于php - MongoDB - 组合多个命令来发送和返回一个请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18491886/

相关文章:

angularjs - 平均堆栈 : How to bind uploads to a mongoose model?

python - 如何从 pymongo 运行原始 mongodb 命令

php - 如果我使用终端在 MySQL 中创建一个数据库,它应该显示在我的 PhpMyAdmin 数据库下吗?

php - yii\base\ErrorException - 找不到类 'app\controllers\EntryForm'

php - 查找并替换文本 block 中的 URL,但排除链接标记中的 URL

javascript - Google Chrome 开发人员工具的源代码栏下的这些东西是什么?

javascript - 无法在 core.js 文件中设置未定义的属性 'value'

node.js - 具有一对多关系的 Mongoose 文档引用

php - MySQL 多表链接

javascript - 在 JavaScript 中,在不同线程中使用不同参数运行相同的函数