在mongo聚合中选择* group by

2024-06-25

我正在尝试做一些我认为很简单的事情。假设我在 mongo 中有一系列具有公共键和可变数量属性的记录。我想选择记录中的所有属性并按名称分组。例如

{ Name: George, x: 5, y: 3 }
{ Name: George, z: 9 }
{ Name: Rob, x: 12, y: 2 }

我想生成一个如下所示的 CSV:

Name     X   Y   Z
George   5   3   9
Rob      12  2

Tried

DB.data.aggregate({ $group : { _id : "$Name" } })

不幸的是,我返回所有名称作为记录,但没有返回所有可能属性的并集。


如果您想组合属性,则需要将它们添加到group。例如,使用$addToSet http://docs.mongodb.org/manual/reference/aggregation/#_S_addToSet查找按每个名称分组的 x,y,z 属性的唯一值:

db.data.aggregate(
    { $group : {
            _id : "$Name",
            x: { $addToSet: "$x" },
            y: { $addToSet: "$y" },
            z: { $addToSet: "$z" },
    }}
)

Returns:

{
    "result" : [
        {
            "_id" : "Rob",
            "x" : [
                12
            ],
            "y" : [
                2
            ],
            "z" : [ ]
        },
        {
            "_id" : "George",
            "x" : [
                5
            ],
            "y" : [
                3
            ],
            "z" : [
                9
            ]
        }
    ],
    "ok" : 1
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在mongo聚合中选择* group by 的相关文章

  • 无法连接到 mongodb 错误:无法连接到服务器 127.0.0.1:27017 at src/mongo/shell/mongo.js:L112

    当我尝试连接到 mongo db 时 我总是收到如下错误 MongoDB shell 版本 2 4 3 连接到 测试 4 月 26 日星期五 14 31 46 941 JavaScript 执行失败 错误 无法连接到服务器 127 0 0
  • 如何将后端计时器与移动应用程序同步

    我正在开发一个选择用户并有 15 秒时间的应用程序 该用户响应的计时器 用户应用程序每 5 秒查询一次数据库 以查看是否选择了该用户 如果是这样 移动应用程序将开始 15 秒 定时器 问题是计时器永远不会匹配 因为用户应用程序可以位于与后端
  • 将 Mongo 集合转储为 JSON 格式

    有没有办法将 mongo 集合转储为 json 格式 无论是在 shell 上还是使用 java 驱动程序 我正在寻找性能最好的一个 Mongo 包含一个 mongoexport 实用程序 参见文档 https docs mongodb c
  • MEAN 堆栈文件上传

    我最近开始使用 MEAN Stack 进行编程 目前正在实现某种社交网络 一直使用 MEAN io 框架来做到这一点 我现在的主要问题是让文件上传正常工作 因为我想做的是将文件从表单接收到 AngularJS 控制器中 并将其与更多信息一起
  • NodeJS、Mongoose:如何使用 mongoose 获取相关数据

    我有 2 个集合 它们是一对多的关系 如何使用猫鼬获取相关数据作为嵌套文档 我有 2 个模式 它们是这样相关的 var userSchema mongoose Schema name String age Number var postSc
  • 更新 MongoDB 中精确元素数组中的字段

    我有一个结构如下的文档 id 43434 heroes nickname test items nickname test2 items Can I set的第二个元素items数组中嵌入对象的数组heros with nickname t
  • 获取背景图片url值

    我正在尝试获取背景图像 url 的值 url 直接在元素标签中使用 style 属性内联设置 如下所示 a style background image none a 我尝试做 var url this css background ima
  • 如何使用打字稿在猫鼬模型中定义自定义查询助手?

    我想使用定义自定义查询助手查询助手 API https mongoosejs com docs guide html query helpers 这里是例子 models article ts import Document Schema
  • 如何根据 node.js 中用户的输入创建 mongodb 查询?

    目前在我的应用程序中我存储了不同的论坛帖子 用户可以添加新消息并创建新帖子 其他用户在显示内容时可以对其进行过滤 这样他们就不会看到他们之前阻止的特定用户上传的内容 每个用户都表示为以下组合device id and display nam
  • 在mongo聚合中选择* group by

    我正在尝试做一些我认为很简单的事情 假设我在 mongo 中有一系列具有公共键和可变数量属性的记录 我想选择记录中的所有属性并按名称分组 例如 Name George x 5 y 3 Name George z 9 Name Rob x 1
  • 如何在 spring-data-mongodb 中使用 mongodb 日期函数运行 mongodb 本机查询?

    我想在 spring data mongodb 中执行以下本机查询 db runCommand aggregate mycollection pipeline match and orderDate gte ISODate 2016 07
  • Mongodb集合对象总小时数集合

    mongodb 收集数据 提前感谢 id ObjectId 5f7b3d78e95af70e17efd6d6 employeeId 2707 employeeName HrJosh status Present date 2020 10 1
  • Mongoose update 更新数组内的嵌套对象

    我正在尝试查询和更新名册数组 roster schedule monday start 中的元素 然后更新本示例中的值 monday start 这两个键需要是动态的 我认为方法会是这样的 通过 id查找文档 通过 id 在数组中查找匹配对
  • 如何使用 pollingThrottle 和 pollingInterval?

    所以我的应用程序中有一些东西我不需要立即反应并找到有关属性的信息轮询节流阀 and 轮询间隔在文档中 所以这里基本上是我设法找到的有关这些属性的所有信息 pollingIntervalMs 数 仅限服务器 在服务器上观察时轮询此查询的频率
  • 如何使用 Mongodb C# 驱动程序连接多个集合

    我需要将 3 个集合与多个集合合并在一起 lookup我在 C 驱动程序中尝试过 它允许我 lookup用户采集但无法执行秒 lookup用于设置集合 有人可以帮忙吗 db Transactions aggregate lookup fro
  • MongoDb 如何按月和年聚合

    我是 mongodb 新手 正在尝试学习 MongoDB 查询 id ObjectId 59815d4704ca1760a45957ca userEmail email protected cdn cgi l email protectio
  • Meteor `Deps.autorun` 与 `Collection.observe`

    使用之间有什么优点 缺点Deps autorun or Collection observe使第三方小部件与反应式小部件保持同步Meteor Collection 例如 我使用 jsTree 直观地显示我存储在 MongoDB 中的目录树
  • Mongodb $addToSet 嵌套对象

    我正在尝试更新嵌套在另一个哈希下的数组对象 IE name mike instagram id 3423 slug mike photos 现在我想使用 addToSet 附加到 instagram 照片对象 但我不知道如何操作 这可以将照
  • 使用 mongoDB 插入子文档

    我收集了以下文件 id 2 workspace name 1 widgets name 2 widgets name 3 widgets name 4 widgets 我怎样才能插入 id 1 blabla blabla 在 小部件 中的
  • 如果数据库关闭一段时间,MongoDB 会更改流超时

    我在nodejs中使用mongoDB更改流 一切正常 但如果数据库关闭需要超过10 5秒才能启动更改流会引发超时错误 这是我的更改流观察程序代码 Service prototype watcher function db let colle

随机推荐

  • 未知类型名称“ssize_t”[重复]

    这个问题在这里已经有答案了 我目前遇到错误 未知类型名称 ssize t 我看了一下Linux中ssize t在哪里定义的 https stackoverflow com questions 55190317 where is ssize
  • 如何合并多个版本的gcda文件?

    我正在使用 gcov 来获取我的应用程序的覆盖范围信息 但是 我的应用程序有 3 个实例同时运行 创建了 3 个版本的 gcda 文件 有没有办法在我的覆盖信息文件中合并相同 gcda 文件的不同版本 我只想将覆盖范围信息作为一个实例 我刚
  • Java 扫描器有NextLine NoSuchElementException?

    我正在尝试逐行读取一个大型 csv 文件 以查找其中字符串出现的次数 这是执行此操作的代码 public int getOffset File file String searched throws FileNotFoundExceptio
  • 错误:没有编译器提供程序! DI 异常 Angular 2 测试

    使用 npm test 命令执行时 给定的单元测试会抛出错误 它表示存在 DI 异常 并显示错误消息 错误 没有编译器提供程序 import TestComponentBuilder from angular compiler testin
  • 在节点模块文件夹中编辑react npm模块的代码

    是否可以更改 module 文件夹中 npm 模块的代码 我认为这不是推荐的做法 还有其他方法可以实现这一目标吗 目前 我尝试更改模块目录中的代码 但更改似乎并不适用 提前致谢 当然你可以改变包的内容node modules因为它是标准化格
  • 统一的网格组合器

    你好 我正在使用这个人的脚本https www youtube com watch v wYAlky1aZn4 https www youtube com watch v wYAlky1aZn4组合网格 因为游戏运行不流畅时会出现 滞后 或
  • Apple Watch 表 - 前 4 行未出现

    我在添加行时遇到问题WKInterfaceTable在苹果手表上 奇怪的是 无论我做什么 前 4 行都显示为空 我尝试手动添加行并循环 没关系 我相信我的代码很好 因为第五行和其他行看起来都很好 发生的情况如下 进一步滚动 My code
  • 如何用R创建时间散点图?

    数据是一系列日期和时间 date time 2010 01 01 09 04 43 2010 01 01 10 53 59 2010 01 01 10 57 18 2010 01 01 10 59 30 2010 01 01 11 00 4
  • 如何在当前鼠标位置设置工具提示?

    I registered Hotkey Ctrl Space Hotkey message is sent to private void Hotkey press I want to show tooltip Hello at curre
  • 如何在 Swift 中按换行符分割字符串

    我有一个从文本文件中获得的字符串 文本文件 Line 1 Line 2 Line 3 我想将其转换为数组 每行一个数组元素 Line 1 Line 2 Line 3 根据文件的保存方式 字符串可能采用以下形式之一 string Line 1
  • 如何将参数传递给 PyQt 中的回调函数

    我的工具栏中有大约 10 个 QAction 这个数字在运行时会有所不同 它们都将执行相同的操作 但使用不同的参数 我正在考虑将参数作为属性添加到 QAction 对象 然后 QAction 的触发信号也会将对象本身发送到回调函数 以便我可
  • 主/详细信息应用程序中的导航项

    我使用 XCode 的 Master Detail 模板编写了一个 Master Detail 应用程序 启动应用程序后 主视图的导航按钮的标题只是 Master 现在我想重命名该按钮 但不幸的是我不知道如何访问该按钮 在appdelega
  • 为什么 Apache Spark 会读取嵌套结构中不必要的 Parquet 列?

    我的团队正在构建一个 ETL 流程 以使用 Spark 将原始分隔文本文件加载到基于 Parquet 的 数据湖 中 Parquet 列存储的承诺之一是查询将仅读取必要的 列条带 但我们看到意外的列被读取以获取嵌套模式结构 为了进行演示 下
  • 在 Laravel 5.2 中按 id 显示图像文件

    我有一个名为 files 的表 它保存与属性表相关的图像的名称 我试图使这些图像显示为以下关系 这是属性表的一部分 这是表文件及其与属性表的关系 我可以在控制器 PropertyController 的 show 方法中传递什么参数 目前我
  • IE 错误响应 [关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 我的 IE
  • Node.js 多线程程序

    我编写了一个 node js 脚本来从交易所获取一些价格 它看起来像这样 async function main async function func var start time performance now for let rout
  • 对 SSPI 的调用失败 GSSAPI 操作失败并出现错误 - 提供了无效的状态代码(SPNEGO 找不到协商机制)

    我正在构建一个 ASP NET Core WebApi 应用程序 它将成为在 Windows 计算机上工作的 WCF 服务应用程序的客户端 这是我的服务客户端类 public class VITServicesClient Services
  • 在node.js中,如何以最轻量级的方式检查给定的代码字符串在语法上是否正确?

    想象一下 我接受用户的一段代码 只想检查给定的字符串是否是有效的 JS 仅从语法角度来看 function checkCode x Logic returns a boolean whether x is syntactically rig
  • Eclipse 中主题预览失败

    我制作了一个简单的用户名 密码对话框 我想在其中应用一个主题 它基本上定义了windowBackground 并且还想预览Eclipse 我看到我的主题与主题组合框中的其他主题一起显示 但选择它会产生以下错误 Missing styles
  • 在mongo聚合中选择* group by

    我正在尝试做一些我认为很简单的事情 假设我在 mongo 中有一系列具有公共键和可变数量属性的记录 我想选择记录中的所有属性并按名称分组 例如 Name George x 5 y 3 Name George z 9 Name Rob x 1