我希望Metabase使用“大于当前日期减去30天”,但是到目前为止,我还没有设法在mongo的自定义查询中实现这一点。
如何使它与Metabase一起使用?
{
"$match": {
"$or": [
{
"transactions.transactionTime": {
"$gte": ISODate("Current Date - 30 days")
}
},
{
"transactions": null
}
]
}
},
答案 0 :(得分:0)
您可以使用subtract
解决此问题:
{
"$match": {
"$expr": {
"$gte": [
"$yourDateField",
{ "$subtract": [ISODate(), { "$multiply": [3600000, 24, 30] }] }
]
}
}
}
我还使用了$multiply
和3个参数来展示计算的工作原理:
1) 3600000 millis = 1 hour
2) 24 hours = 1 day
3) 30 days
但是您可以写一个简短的版本:
{
"$match": {
"$expr": {
"$gte": [
"$yourDateField",
{ "$subtract": [ISODate(), 2592000000] }
]
}
}
}
答案 1 :(得分:-1)
您可以将此传递给查询。
const d = new Date();
const howManyDaysBefore = 30;
const thirtyDaysAgo = new Date(d.setDate(d.getDate() - howManyDaysBefore)).toISOString();
console.log(thirtyDaysAgo)