aggregation 相关问题

聚合是两个类之间的关系,最好描述为“has-a”和“whole / part”关系。

我正在尝试使用 $graphLookup 和 restrictSearchWithMatch 属性,每次迭代都不同,以进行动态图搜索

我尝试使用 $graphLookup ,使得每次迭代的属性 limitSearchWithMatch 都应该不同。看,在下面的代码中,我正在尝试寻找叔叔,以便进行第一次迭代......

回答 1 投票 0

Pandas 计算一列中 True/False 值的数量,以获得另一列的唯一集/分组

我正在尝试根据另一列计算并列出一列中的唯一值,只要唯一计数大于 2。我引用了这篇文章,它已经让我部分实现了这一点,但是n...

回答 1 投票 0

Elastic Search 中的百分位聚合返回值 0,即使存在具有值的匹配文档

我正在尝试通过弹性搜索查询中的聚合计算pricingscore 属性的第75 个百分位值。我的最后一个条件似乎返回 0 docCount 返回 0 百分位数值。 T...

回答 1 投票 0

如何使用 Prisma 从子实体数量大于特定值的实体中选择数据?

我有一个名为“作者”的实体,它下面可以有很多本书。我想从我的数据库中选择与 5 本书以上相关的所有作者。我在 Next 14 应用程序中使用 Prisma,并且我...

回答 1 投票 0

如何在 .groupby() 和 .agg() 之后从 pandas DataFrame 中获取子列?

我正在尝试对 Pandas DataFrame 执行分组和聚合操作。具体来说,我想计算每个班级组的平均值和计数。但是,我在访问时遇到问题...

回答 1 投票 0

在 Slickgrid 中,聚合函数结果未按照 slickgrid 数据内联编辑进行修改/更新

我正在使用 Angular slick grid 版本 4.3.1 来显示我的数据列表。根据配置,聚合函数计算针对列进行,而数据根据字段进行分组。之后如果我

回答 1 投票 0

Pandas 数据帧的按行聚合

编写一个函数的最 Pythonic 方法是什么,该函数在跳过时对 pandas 数据帧的指定列集(列表中的列名称)进行行式聚合(总和、最小值、最大值、平均值等)。 ..

回答 1 投票 0

在聚合中使用Python-Polars时如何计算众数

我正在参与一个数据挖掘项目,在进行特征工程时遇到一些问题。我的目标之一是根据主键聚合数据,并生成新列。所以我...

回答 1 投票 0

流式 SQL - 如何在简单的滚动窗口聚合中获取最后一条记录

环境 - AWS Kinesis Analytics(但我可以采用建议的任何流式 SQL 概念并将其应用到我的环境中) 我有这样的源数据不断流入: epoc_时间戳

回答 1 投票 0

为什么allowDiskUse在$group阶段的聚合管道中不起作用?

我正在开发一个聚合管道来清理数据库集合中的重复数据。但即使在设置 {allowDiskUse: true } 后,它也会抛出以下错误。 错误:“

回答 1 投票 0

Cypher - 返回聚合(计数或总和)大于 1 的行

新手和我有一张图表,其中“员工”在“零售商”工作,“客户”在“零售商”购物。客户进行的某些交易存在“争议”。我正在想办法...

回答 1 投票 0

在 MongoDB 查询中添加来自另一个集合的匹配文档的计数

我有2个收藏: 公寓: {_id: '1', 地址: '1 号街'}, {_id: '2', 地址: '2号街'}, {_id: '3', 地址: '3号街'}, {_id: '4', 地址: '4 号街'} 和用户: {_id: '1', name: '我们...

回答 1 投票 0

如何使用聚合 MongoDB 进行 SELECT DISTINCT

我正在研究 Mongo 查询,我有一个关于如何使用聚合在 Mongo 查询上进行“选择不同”的问题。我真的很接近完成它了。 我当前的输出: [ { “user_id&qu...

回答 1 投票 0

从两个连接的文档获取电话和电子邮件的管道是什么?

我正在尝试将电子邮件和电话号码合并到为用户返回的单个文档中,该文档是从其他两个文档获取的。我有一条“几乎”有效的管道...但它不是q...

回答 1 投票 0

在 mongodb 聚合中添加缺少序列日期的文档

这里看到这个集合,其中有一条记录为二月 14 日的 createAt 和一条二月 16 日的记录,现在查询集合上的聚合,例如我想添加 2 月 15 日的文档,因为它在

回答 1 投票 0

MongoDB Join过滤器,输入,as,if,eq_id存在

2 模式用户和卡 我将 user.catagories 存储在 user.catagory 下,以及与数组中列出的 catagory.cards 关联的卡片。 我将所有卡片数据存储在卡片架构中。 (见...

回答 1 投票 0

MongoDB 合并对象数组,并通过键更新值

我陷入了聚合的困境,我需要更新对象数组内的分析值。 我有一个生成这样的对象的聚合: { “密钥”:“产品1”...

回答 1 投票 0

MongoDB 聚合并查找具有多个数组的对象

我有一个包含对象的集合,每个对象都包含多个数组。例如 组件:{ 机械项目:[{ 机械 ID: 我有一个包含对象的集合,每个对象都包含多个数组。例如 assmemblies: { mechanicalItems: [{ mechanicalId: <ObjectId that references the mechanicalitems collection>, quantity: Number }], electricalItems: [{ mechanicalId: <ObjectId that references the mechanicalitems collection> quantity: Number }], 我正在尝试执行查找,以将 mechanicalitems 和 electricalitems 中的所有字段放入程序集集合中,但很难使 $lookup 工作。 当我尝试展开和分组时,我丢失了另一个数组,或者它最终嵌套在另一个数组的每个数组对象内。 我也尝试直接投影回数量属性,但我得到的是所有数量的数组: { $lookup: { from: "mechanicalitems", let: { mechanicalItem: "$mechanicalItems", item: "$machanicalItems.mechanicalId", }, pipeline: [ { $match: { $expr: { $in: ["$_id", "$$item"], }, }, }, { $project: { "quantity": "$$mechanicalItem.quantity" // <-- this gives an array of all the quantities } }, ], as: "mechanicalItems", }, }, 我尝试了一些其他选项,但无法完全得到我正在寻找的东西。 *** 编辑 - 预期输出 如果我的 mechanicalItems 字段是:“尺寸”、“材料”、“风格”,我的 electricalItems 字段是:“当前”、“评级”、“绝缘”,那么我的预期输出是: assemblies: { mechanicalItems: [{ item: { _id: <some ObjectId> size: '12', material: 'steel', style: 'thick' }, quantity: Number }, ... ], electricalItems: [{ item: { _id: <some ObjectId> current: '15', rating: 'low voltage', insulation: 'PVC' }, quantity: Number }, ... ] } 我希望将 mechanicalItemId 替换为 MechanicalItems 集合中的实际对象(并最终将该字段重命名为“item”,但我可以稍后使用 $addFields 或 $project 来做到这一点)。 有一个拼写错误:$machanicalItems.mechanicalId,应该是$mechanicalItems.mechanicalId。 mechanicalItem.quantity 返回一个数字数组,因为 mechanicalItem 是一个数组。相反,您需要获取 quantity 数组的匹配文档的单个 mechanicalItem 值,并将其设置到 quantity 字段。 db.assemblies.aggregate([ { $lookup: { from: "mechanicalitems", let: { mechanicalItem: "$mechanicalItems", item: "$mechanicalItems.mechanicalId" }, pipeline: [ { $match: { $expr: { $in: [ "$_id", "$$item" ] } } }, { $set: { "quantity": { $first: { $map: { input: { $filter: { input: "$$mechanicalItem", cond: { $eq: [ "$_id", "$$this.mechanicalId" ] } } }, in: "$$this.quantity" } } } } } ], as: "mechanicalItems" } } ]) 当您查找与 electricalItems 集合的连接时,electricalItems 数组的逻辑是相同的。 演示@Mongo Playground

回答 1 投票 0

Mongo 聚合并查找具有多个数组的对象

我有一个包含对象的集合,每个对象都包含多个数组。例如 组件:{ 机械项目:[{ 机械 ID: 我有一个包含对象的集合,每个对象都包含多个数组。例如 assmemblies: { mechanicalItems: [{ mechanicalId: <ObjectId that references the mechanicalitems collection>, quantity: Number }], electricalItems: [{ mechanicalId: <ObjectId that references the mechanicalitems collection> quantity: Number }], 我正在尝试执行查找,以将机械项目和电气项目中的所有字段放入组件集合中,但很难使 $lookup 工作。 当我尝试展开和分组时,我丢失了另一个数组,或者它最终嵌套在另一个数组的每个数组对象内。 我也尝试直接投影回数量属性,但我得到的是所有数量的数组: { $lookup: { from: "mechanicalitems", let: { mechanicalItem: "$mechanicalItems", item: "$machanicalItems.mechanicalId", }, pipeline: [ { $match: { $expr: { $in: ["$_id", "$$item"], }, }, }, { $project: { "quantity": "$$mechanicalItem.quantity" // <-- this gives an array of all the quantities } }, ], as: "mechanicalItems", }, }, 我尝试了一些其他选项,但无法完全得到我正在寻找的东西。 *** 编辑 - 预期输出 如果我的 MechanicalItems 字段为:“尺寸”、“材料”、“样式”,而我的 ElectricalItems 字段为:“电流”、“额定值”、“绝缘”,那么我的预期输出为: assemblies: { mechanicalItems: [{ item: { _id: <some ObjectId> size: '12', material: 'steel', style: 'thick' }, quantity: Number }, ... ], electricalItems: [{ item: { _id: <some ObjectId> current: '15', rating: 'low voltage', insulation: 'PVC' }, quantity: Number }, ... ] } 我希望将 MechanicalItemId 替换为 MechanicalItems 集合中的实际对象(并最终将该字段重命名为“item”,但我可以稍后使用 $addFields 或 $project 来做到这一点)。 有一个拼写错误:$machanicalItems.mechanicalId,应该是$mechanicalItems.mechanicalId。 mechanicalItem.quantity 返回一个数字数组,因为 mechanicalItem 是一个数组。相反,您需要获取 quantity 数组的匹配文档的单个 mechanicalItem 值,并将其设置到 quantity 字段。 db.assemblies.aggregate([ { $lookup: { from: "mechanicalitems", let: { mechanicalItem: "$mechanicalItems", item: "$mechanicalItems.mechanicalId" }, pipeline: [ { $match: { $expr: { $in: [ "$_id", "$$item" ] } } }, { $set: { "quantity": { $first: { $map: { input: { $filter: { input: "$$mechanicalItem", cond: { $eq: [ "$_id", "$$this.mechanicalId" ] } } }, in: "$$this.quantity" } } } } } ], as: "mechanicalItems" } } ]) 当您查找与 electricalItems 集合的连接时,electricalItems 数组的逻辑是相同的。 演示@Mongo Playground

回答 1 投票 0

MongoDB 中的字符串聚合

我收集了以下文件: { “ID”: ..., “关键”:47 }, { “ID”: ..., “钥匙”:12 } 我想将整个集合聚合到一个

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.