我的文件中有一个日期。如何查询不超过7天的所有文档。我不能假设请求者机器和数据库上的时间是同步的。
答案 0 :(得分:0)
您可以使用" serverStatus"来获取服务器日期时间。命令:
在mongo shell中:
server_time = db.adminCommand("serverStatus")['localTime'].getTime();
db.mycollection.find( { "change_date": { $gt: new Date((server_time) - 7 * 24 * 60 * 60 * 1000) }} )
在Java中:
MongoClient mongoClient = new MongoClient();
MongoDatabase database = mongoClient.getDatabase("dbname");
Document serverStatus = database.runCommand(new Document("serverStatus", 1));
Instant server_time = (Instant) serverStatus.get("localTime");