Я хочу вызвать пользовательскую функцию, которая создается в db.runCommand ().
У меня есть создано ниже функция :
db.system.js.save(
{
_id : "myAddFunction" ,
value : function (x, y){ return x + y; }
}
);
Теперь я хочу вызвать эту функцию в db.runCommand (): я попытался, как показано ниже:
db.runCommand({
aggregate: "mycollection",
pipeline: [
{
$project: {
"X": 1,
"Y": 1,
//"SUM1" : { $sum: ["$X", "$Y"] },
//"SUM2" : { "$myAddFunction": ["$X", "$Y"]},
"SUM3": {
"%function": {
"name": "myAddFunction",
"arguments": [
"$X",
"$Y"
]
}
}
}
},
],
cursor: {}
})
Я могу получить выходные данные ниже runCommand, но как получить проекцию из myCollection?
db.runCommand( {
eval: 'function(u1,u2) {return myAddFunction(u1,u2)};',
args: [ 1,2 ],
nolock: true
}
);