使用mongo repository@query比较两个字段?

jv2fixgn  于 2021-06-30  发布在  Java
关注(0)|答案(0)|浏览(264)

我正在尝试删除下面的筛选器逻辑,并将其添加到存储库调用顶部的@query中。

List<Doc> docs = dockRepository.findAllByOrderByUpdatedOnDesc(PageRequest.of(0, 10));
        docs.stream()
                .filter(doc -> !doc.getSize().equals(doc.getExtraSize())) // I want to move this logic and add into @Query on repo call
                .forEach((doc) -> {

                });

在上面的代码中,我添加了一个过滤器来检查额外大小的大小,但是我不希望出现这种情况,我想通过它 @QueryfindAllByOrderByUpdatedOnDesc 存储库调用。因为我是mongo的初学者,所以很难找到如何添加mongo@query来比较两个字段。我知道关于sql查询,应该是下面这样的

Select * from Doc where size != extraSize order by updatedOn desc

我尝试了以下查询,但不适用于我:(

@Query("{ size: { $ne: '$extraSize' } }")
List<Doc> findAllByOrderByUpdatedOnDesc(Pageable pageable)

你能帮帮我吗?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题