使用MongoTemplate进行自定义查询以获取最新记录

问题描述

我的收藏集看起来像这样:

{
    "_id" : ObjectId("5f1ac6ba3d4e547950e28d37"),"vin" : "ATHBJ11C4LY4RV3JA","msgType" : "R","dealerInfo" : {..},"sale" : {..},"encryptedSoldTo" : "","receivedTimestamp" : "2020-09-15T11:32:10.537Z","region" : "US"
}

{
    "_id" : ObjectId("5f1ac6cd3d4e547950e28d39"),"vin" : "BTHBJ11C4LY4RV3JA","receivedTimestamp" : "2020-09-4T11:32:29.284Z","region" : "CA",}

我正在使用MongoTemplate查询集合的零售交货报告。查询看起来像这样:

        Query query = new Query();
        List<String> regions = Arrays.asList(new String[]{"US","PR","CA"});
        query.addCriteria(Criteria.where("msgType").is("R"));
        query.addCriteria(Criteria.where("region").in(regions));
        query.addCriteria(Criteria.where("receivedTimestamp").gt(oldDate));
        List<RetailDeliveryReport> retailDeliveryReports = mongoTemplate.find(query,RetailDeliveryReport.class);

到目前为止,它运行良好。现在,我还有其他要求。零售-交付-报告集合可以为一个VIN提供多个文档。我只需要获取一个基于“ receivedTimestamp”的文档。这意味着,仅应返回特定VIN的最新记录。我需要将此要求合并到现有查询中。我完全不知道如何解决这个问题。谢谢

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)