MongoDb的$ project聚合运算符是否可以将文档重组为数组?
这是我到目前为止所做的:
var pipeline = [];
var project = {
$project : {
x: "$_id",
y: "$y" ,
_id : 0
}
};
pipeline.push(project);
model.aggregate( pipeline, callback);
Run Code Online (Sandbox Code Playgroud)
这给了我输出的形式:
[
{
x: '...',
y: '...'
}
....
]
Run Code Online (Sandbox Code Playgroud)
我想拥有:
[
['..','..']
....
]
Run Code Online (Sandbox Code Playgroud)
我可以通过迭代来轻松地重构输出,但是真的很想知道聚合本身是否可以返回数组而不是对象.
我在mongodb中有以下查询 -
db.devices.aggregate({
$match: {userId: "v73TuQqZykbxFXsWo", state: true}},
{
$project: {
userId: 1,
categorySlug: 1,
weight: {
$cond: [
{"$or": [
{$eq: ["$categorySlug", "air_fryer"] },
{$eq: ["$categorySlug", "iron"] }
] },
0, 1] }
} },
{$sort: {weight: 1}},
{ $limit : 10 }
);
Run Code Online (Sandbox Code Playgroud)
我正在尝试使用mgo驱动程序在golang中编写这个,但根本无法解决这个问题!
如何将其翻译为golang mgo查询?