我正在寻找一种方法将日期合并到Mongodb聚合管道的$ out阶段创建的集合名称中。
像这样的东西(但它不起作用)
db.sales.aggregate([{$project: {account_number:1}},
{$out: "new_collection" + Date()}]);
这会返回以下错误;
第2阶段的规范包含无效的JSON:意外字符' +'在第1行,第18行
任何人都知道如何做到这一点?
答案 0 :(得分:2)
Date()
返回日期的长字符串版本,其中可以包含无法在集合名称中使用的字符。例如:
'Wed Dec 23 2015 22:47:53 GMT-0600 (Central Standard Time)'
所以你可能想要使用像Date.now()
这样的东西,它会返回像1450932419617
这样的ms计数,它将在集合名称中起作用。
{$out: "new_collection" + Date.now()}
为您提供有效的收藏名称,例如'new_collection1450932419617'
。