1. 程式人生 > >Mongodb使用模板模糊查詢

Mongodb使用模板模糊查詢

按照姓名精確查詢

    Query query = new Query();
    query.addCriteria(Criteria.where("name").is(name));

按照姓名模糊查詢

    Pattern pattern=Pattern.compile("^.*"+pattern_name+".*$", Pattern.CASE_INSENSITIVE);
    query.addCriteria(Criteria.where("name").regex(pattern));

多條件查詢

    Query query = new Query();
    query.addCriteria(Criteria.where("name").is(name));
    query.addCriteria(Criteria.where("age").is(age));

或者另外一種寫法

    Criteria criteria = new Criteria();
    criteria.and("name").is(name);
    criteria.and("_id").is(new ObjectId(id));
    Query query = new Query(criteria);

一個模糊關鍵字匹配多欄位

     Pattern pattern=Pattern.compile("^.*"+pattern_name+".*$", Pattern.CASE_INSENSITIVE);
                criatira.orOperator(Criteria.where("name").regex(pattern),
                        Criteria.where("sex").regex(pattern),
                        Criteria.where("age").regex(pattern),
                        Criteria.where("class").regex(pattern));

精確匹配同上