- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我正在做一些聚合以获得关于类别中有多少产品的一些统计数据。
经过一些管道后我归结为:
[
{
topCategory: "Computer",
mainCategory: "Stationary"
},
{
topCategory: "Computer",
mainCategory: "Laptop"
},
{
topCategory: "Computer",
mainCategory: "Stationary"
},
{
topCategory: "Computer",
mainCategory: "Stationary"
},
]
想要的输出:
[
{
name: "Computer",
count: 4,
mainCategories: [
{
name: "Laptop",
count: 2
},
{
name: "Stationary",
count: 2
}
]
}
]
到目前为止我的查询:
let query = mongoose.model('Product').aggregate([
{
$match: {
project: mongoose.Types.ObjectId(req.params.projectId)
}
},
{ $project: {
_id: 0,
topCategory: '$category.top',
mainCategory: '$category.main',
}
},
]);
我知道我需要结合使用 $group
和 $sum
。我尝试了不同的方法,但无法正常工作。
最佳答案
在这种情况下,首先您应该按 mainCategory
分组,然后按如下所示按 topCategory
分组
db.collection.aggregate({
$group: {
_id: "$mainCategory",
"count": {
$sum: 1
},
"data": {
"$push": "$$ROOT"
}
}
}, {
"$unwind": "$data"
}, {
"$group": {
"_id": "$data.topCategory",
"count": {
"$sum": 1
},
"mainCategories": {
"$addToSet": {
"name": "$_id",
"count": "$count"
}
}
}
}).pretty()
关于Mongodb,汇总 $group 中项目的 nr,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41649807/
我正在使用 nr 高达 128 的 io_submit(..., nr, ...),但我提交的请求通常较少。 根据手册IO_SUBMIT(2) ,这是合法的,但我想知道:为什么?此外,有没有一种方法可
我正在学习使用 awk 进行文件比较。 我找到了如下语法, awk 'NR==FNR{a[$1];next}$1 in a{print $1}' file1 file2 我不明白NR==FNR在这里面
性能上有什么实际差异吗? 它更快吗? (假设我在同一个程序中至少使用了 100 个案例,它会在速度方面提高我的程序吗?) 最佳答案 这个问题可能更适合 Software Engineering Sta
我对 python 和 pandas 相对陌生,所以我可能无法完全理解所有可能性,并且希望得到如何解决以下问题的提示: 我有一个df就像这个: Jan Feb Mar Apr i
我们在windows下安装MySQL时会出现Access denied for user 'root'@localhost'(using password:No)的问题,这个问题是因为你的机器上之前
我是数据库的初学者,我有以下内容:我需要展示那些有最多不正确学生的类(class)(所以那些还没有带书的人和那些迟于 date_to_return 带书的人) 表格类(class):类(class)代
我需要使用正则表达式来解析数据文件的特定行。我的匹配测试命令有效,我的特定行号测试命令有效,但是当我将它们放在一起时,我没有输出。 gawk 'NR==42 {print $0}' filename
我最近试用了 Google 的 seq2seq建立一个小型的 NMT 系统。我设法让一切正常运行,但我仍然想知道模型的轮数和训练步骤数之间的确切差异。 如果我没记错的话,一个 epoch 由多个训练步
是否可以将顶部的这三个函数合二为一,并且当我单击按钮滚动所有三个函数时,每个骰子仍然无法获得相同的随机数?澄清这些功能是当我点击单个骰子时的功能,而底部的功能是当我想同时滚动所有三个骰子时的功能!所有
我正在尝试制作一个程序,它从 X 个问题中随机挑选 10 个问题(目前随机编写了 14 个问题),而不会再次挑选相同的问题,但我已经在这个垃圾问题上被困了 4 个小时。 我的问题是“randomNum
在 numpy 中获取下一个信号值之前获取行的 nr 的有效方法是什么? 我有一个信号值列表 (-1, nan, 1),它看起来与下表类似,并且想获得另一个列表,其中包含行数 nr 值,直到下一个信号
我需要在我的 Fortran 90 代码中使用 MRQMIN 子例程。在这个子程序里面还有一些其他的模块nrtype.90 , nrutil.f90和 nr.f90 .我正在使用这些命令编译所有这些模
我正在运行以下命令,只要它们是第一个文件中的内容,它就可以很好地工作: awk -F, 'FNR==NR {a[tolower($1)]++; next} !a[tolower($1)]' OutSi
我正在做一些聚合以获得关于类别中有多少产品的一些统计数据。 经过一些管道后我归结为: [ { topCategory: "Computer", mainCategory: "S
我正在尝试使用 Android API 在 Samsung S20 (T-Mobile) 上检测 5G Nr 小区信息 CellIdentityNr https://developer.android
在过去的几个小时里,我一直在尝试用 awk 解决这个愚蠢的问题,但到目前为止还没有成功。我了解如何绘制每一行,例如: awk 'NR%2' file 而且我还了解如果一列在特定范围内如何打印基于列的文
苹果会在今年发布iPhone12,iPhone12(一些更高的设备类型)可以支持5G功能,我认为iPhone12应该是基于iOS14平台的,所以我研究了iOS14的API,但我们可以'找不到任何关于
嗨,我正在尝试使用 awk 命令找到正则表达式后打印 5 行。我有以下内容: line_start=$(awk '/regex/{print NR}' file) let line_end=$line
有人可以告诉我解决问题的最佳数据结构选择是什么吗@http://acm.timus.ru/problem.aspx?space=1&num=1027。 复制到这里供引用。 问题 A text of a
我们可以将 NR 传递给 awk 中的变量吗? 我有一个脚本是这样的: awk -v { blah blah.. .......... count-- pr
我是一名优秀的程序员,十分优秀!