gpt4 book ai didi

javascript - 使用从 MongoDB JSON 对象获取 "Pretty"数据

转载 作者:行者123 更新时间:2023-11-30 20:48:41 36 4
gpt4 key购买 nike

更新
在尝试了 Saravana 的解决方案之后,我仍然遇到一个奇怪的语法错误。经过一个小时后,我无法弄清楚为什么......(也很抱歉复制粘贴不好。

db.submissions.aggregate(  
[
{$match: { started: {'$gte': Date('2018-01-02 01:01:01.001'), '$lte':
Date('2018-01-02 13:15:59.999' )}}}
{$project: { _id: 0,
data: [
{$dateToString: { format: "%Y-%m-%dT%H:%M:%S", date: "$started" } },
{$dateToString: { format: "%Y-%m-%dT%H:%M:%S", date: "$finished" } },
'$size'
]
}
}
]
)

第 4 行的语法错误缺少 ] 在位置 8(但那是在任何代码之前,没有意义)

原帖
我是 mongo 和 JS 的新手,所以请耐心等待我的“基本”代码。我正在运行一个 query.js,我得到了我想要的数据,我只需要清理它看起来像一个 csv 或类似的东西......基本上我的查询返回 2 个日期和一个文件大小。 (底部示例)

var cursor=db.submissions.find({started : {'$gte': ISODate('2018-01-02 
01:01:01.001'), '$lte': ISODate('2018-01-02 13:15:59.999' )}},{started : 1,
finished : 1, "inputs.inputFile.size" : 1})

cursor.forEach(printjson);

这会返回类似这样的东西......

"_id" : ObjectId("5a4b7fbe77b5260001843b82"),
"started" : ISODate("2018-01-02T12:49:03.745Z"),
"finished" : ISODate("2018-01-02T12:49:05.695Z"),
"size" : 4560

"_id" : ObjectId("5a4b85be2ea4170001707562"),
"started" : ISODate("2018-01-02T13:14:39.851Z"),
"finished" : ISODate("2018-01-02T13:14:44.363Z"),
"size" : 4547

我只希望返回的数据(不是字段名称)看起来像 [2018-01-02T12:49:03.745Z, 2018-01-02T12:49:05.695Z, 4560] 这样我就可以创建一个 csv。无论如何,我完全不知所措,我们将不胜感激

最佳答案

您可以使用聚合管道来格式化数据

db.col.aggregate(
[
{$match : ...}, // your filters
{$project : {
_id :0,
data : [
{$dateToString : { date : "$started", format : "%Y-%m-%dT%H:%M:%S" } },
{$dateToString : { date : "$finished", format : "%Y-%m-%dT%H:%M:%S" } },
"$size"
]
}
}
]
)

结果

{ "data" : [ "2018-01-02T12:49:03", "2018-01-02T12:49:05", 4560 ] }
{ "data" : [ "2018-01-02T13:14:39", "2018-01-02T13:14:44", 4547 ] }

迭代游标以仅获取值

.forEach(function(doc) {print(doc.data)})

结果

2018-01-02T12:49:03,2018-01-02T12:49:05,4560
2018-01-02T13:14:39,2018-01-02T13:14:44,4547

关于javascript - 使用从 MongoDB JSON 对象获取 "Pretty"数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48414388/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com