您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Spring Boot mongoDB喜欢在数字字段上查询-整数/双精度

Spring Boot mongoDB喜欢在数字字段上查询-整数/双精度

我设法在双字段上建立LIKE查询

Query query = new Query();
Set<String> gameType = new HashSet<>();
List<Criteria> andCriteria = new ArrayList<>();

String game = "football";
int salary = 250;

gameType.add(game);

andCriteria.add(Criteria.where("type").in(gameType));
andCriteria.add(Criteria.where("$where").is("/^" + salary + ".*/.test(this.salary)"));

Criteria[] criteriaArray = new Criteria[andCriteria.size()];
criteriaArray = andCriteria.toArray(criteriaArray);
query.addCriteria(new Criteria().andOperator(criteriaArray));

List<Players> players = mongoTemplate.find(query, Players.class);

return players;

正如我上面发布的那样,此代码生成了LIKE。 您也可以用简单的方式做到这一点。

Query query = new Query();
Set<String> gameType = new HashSet<>();

String game = "football";
int salary = 250;

gameType.add(game);

query.addCriteria(Criteria.where("type").in(gameType));
query.addCriteria(Criteria.where("$where").is("/^" + salary + ".*/.test(this.salary)"));

List<Players> players = mongoTemplate.find(query, Players.class);

return players;

我希望这将有所帮助。

mongodb 2022/1/1 18:15:59 有559人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶