Spring data mongo compares two field queries

  mongodb

Example

public long countBetweenFields(String userId){
        Criteria criteria = new Criteria() {
            @Override
            public DBObject getCriteriaObject() {
                DBObject obj = new BasicDBObject();
                obj.put("$where", "this.lastUpdateTime > this.lastReadTime");
                return obj;
            }
        };
        Query query = new Query();
        query.addCriteria(Criteria.where("userId").is(userId));
        query.addCriteria(criteria);
        return mongoTemplate.count(query,"forum");
    }

docs