【发布时间】:2019-07-01 13:29:51
【问题描述】:
我有一组名为“passengers”的 JSON 数据存储在 mongoDB 集合中。这里我使用 CSV 文件将原始数据上传到数据库。在 CSV 文件的“时间戳”列中,所有日期均以“2019 年 12 月 1 日 12:30”格式给出。
我想获取给定日期范围内的乘客数据。但我无法获得所需的输出。它显示所有日期,而不是显示给定范围之间的日期。 DB中的“timestamp”键是“String”类型的
例如
我将正文中的“fromDate”:“12/1/2019 09:00”和“toDate”:“12/3/2019 16:04”传递给服务器。
我想获取仅在“2019 年 12 月 1 日 09:00”到“2019 年 12 月 3 日 16:04”之间旅行的乘客详细信息,但它显示了“2019 年 12 月 1 日 00 日”的所有乘客:00" 到 "12/31/2019 00:00"
我试过这个:
passenger.find({
'timestamp': {
$gte:req.body.fromDate,
$lt: req.body.toDate
}
}, function (err, passengersData) {
console.log("Passenger details ==", passengersData);
if (err) {
res.status(500).json({
"message": err.message
});
return;
}
res.status(200).json(passengersData);
});
我想获取仅在“2019 年 12 月 1 日 09:00”到“2019 年 12 月 3 日 16:04”之间旅行的乘客详细信息,但它显示了“2019 年 12 月 1 日 00 日”的所有乘客:00" 到 "12/31/2019 00:00"enter image description here
【问题讨论】:
-
为什么是字符串?将日期/时间存储为专有类型! docs.mongodb.com/manual/reference/bson-types/#timestamps
-
@raffis 谢谢但是,在上传 CSV 文件时,在“时间戳”列中,所有日期都是“12/1/2019 12:30”格式。
标签: javascript mongodb