[英]MongoDB aggregate return averages only where date key is greater than a specific date in PyMongo
[英]Check today date greater than in if condition in aggregate mongodb
我想检查报价到期日期是否大于今天,如果是,则返回是,否则否我已在下面的代码中完成,但它没有按要求工作请帮助我。
Offer.aggregate([
enddate: {
$cond: {
if: {
$gte: [new Date(new Date().getTime()-60*5*1000).toISOString(),true]
},
then: "No",
else: "Yes"}
},
]);
您必须使用$project
并且对于条件,正确的语法是if: { $gt: ["$enddate", new Date()] }
其中enddate
是您要检查的字段:
Offer.aggregate([
{
$project: {
isExpired: { // new field
$cond: {
if: { $gt: ["$enddate", new Date()] },
then: "No",
else: "Yes"
}
},
}
}
]);
有关$cond
的更多信息: https://docs.mongodb.com/manual/reference/operator/aggregation/cond/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.