Hi, I want to use Atlas Online Archive custom query to remove all items which are older than a specific date as below
{“createdDate”:{"$lt":ISODate(‘2021-01-01’)}}
And because the query must be valid JSON, I cannot use any functions such as ISODate, Date, etc.
Could you please give me some advice on this?
Thank you
1 Like
Hi Tuan Pham Minh,
Please try your custom archival rule with $expr. Also, we recommend to first check the query execution plan to make sure your query is going to be efficient with the $expr.
Thanks,
Prem
1 Like
steevej
(Steeve Juneau)
May 16, 2022, 9:59pm
3
Try with extended JSON as specified at
1 Like
steevej
(Steeve Juneau)
May 16, 2022, 10:19pm
4
You could also experiment with $dataAdd using $$NOW as the starting date.
Something like (untested):
{ "$expr" : {
"$lt" : [
"$createdDate" ,
{ "$dateAdd" : {
"startDate" : "$$NOW" ,
"unit": "year" ,
"amount" : -1 } }
]
}}
2 Likes