springboot-mongo 查询语句写法


Criteria

Mongodb

说明

Criteria and (String key)

$and

并且

Criteria andOperator (Criteria…​ criteria)

$and

并且

Criteria orOperator (Criteria…​ criteria)

$or

或者

Criteria gt (Object o)

$gt

大于

Criteria gte (Object o)

$gte

大于等于

Criteria in (Object…​ o)

$in

包含

Criteria is (Object o)

$is

等于

Criteria lt (Object o)

$lt

小于

Criteria lte (Object o)

$lte

小等于

Criteria nin (Object…​ o)

$nin

不包含

Criteria regex(Object…​ o)

$regex

正则匹配

Criteria not(Object…​ o)

$not

不存在

mongoTemplate.find(query,entity.class,collectName)

1. a=b

Query query = new Query(Criteria.where("a").is("b"));

2. 分级查询

Query query = new Query();

query.addCriteria(Criteria.where("linkUrl.id").is(linkUrlid)); 

mongoTemplate.find(query.limit(end - begin).skip(begin),entity.class,collectName);

3. 模糊查询

     Query query = new Query();  
        if (conditions != null && conditions.size() > 0) {  
            for (Condition condition : conditions) {  
                query.addCriteria(Criteria.where(condition.getKey()).regex(".*?\\" +condition.getValue().toString()+ ".*"));  
            }  
        } 

4.gte: 大于等于,lte小于等于

query.addCriteria(Criteria.where("time").gte(condition.getValue()));

5. 排序

query.limit(end - begin).skip(begin).with(new Sort(new Sort.Order(direction, orderField)))

6.查询字段不存在的数据

Criteria.where("goodsSummary").not()

7.查询字段不为空的数据

Criteria.where("key1").ne("").ne(null)  

8.查询或语句:a || b

   Criteria criteria = new Criteria();  

criteria.orOperator(Criteria.where("key1").is("0"),Criteria.where("key1").is(null));

9.查询且语句:a && b

Criteria criteria = new Criteria();  
criteria.and("key1").is(false);  
criteria.and("key2").is(type);  

Query query = new Query(criteria);  

或者

Criteria criteria = new Criteria();  
criteria.addOperator(Criteria .where("key1").is(false),Criteria .where("key2").is(false));

Query query = new Query(criteria); 







猜你喜欢

转载自blog.csdn.net/zhuchunyan_aijia/article/details/80298529
今日推荐