Is ISODate or new Date supported by MongoDB + Matlab?
Show older comments
Ive been trying to do a query based on a date field and the existence of a field. My query is as follows
$and:[
{"timestamp":{$lt:ISODate("2022-10-11")}},
{XtsMover_9_ActAcc:{$exists:true}}
]
This query runs fine in mongoDB compass but it does not work when I try to run the query from Matlab. ISODate or New Date supported by Matlab?
This is what I get from matlab:
Error using mongo/find (line 797)
[Mongo Driver Error]:
{$and:[{"timestamp":{$lt: ISODate("2022-10-11")}},{"XtsMover_9_ActAcc":{$exists:true}}]}
^.
Thabks for the help
4 Comments
Rik
on 5 Aug 2021
I have never worked with Mongo databases, so this may be stupid, but there is a whitespace difference between the calls you posted. Might that be a syntax error?
Victor Hernandez
on 5 Aug 2021
xiang zhang
on 15 Sep 2021
Hi Victor, i have run into the same program. So far i can't do query based on date in mongo through matlab. Any update on this issue? Thanks a lot...
Victor Hernandez
on 4 Oct 2021
Answers (1)
Peter
on 20 Nov 2024
After hours of messing with queries in MATLAB, I was able to find a solution to this issue.
The following code allows you to query with a date. The format the MATLAB interpreter accepts is not the same as MongoDB.
This format worked for me, even though in MongoDB Compass the same style of query is incorrect.
mongoDB = mongoc(server,port,dbname);
query = "{ ""FirstSeen"": { ""$gte"": {""$date"": ""2024-05-12T15:04:20.803Z""}} }";
find(mongoDB, collection, Query=query)
Categories
Find more on Dates and Time in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!