QueryBuilders 方法介绍:
- QueryBuilder boolQueryBuilder = QueryBuilders.boolQuery(); // bool语句的封装 组合语句 and not or
- QueryBuilders.termQuery(null,null); //精确查询 完全匹配
- QueryBuilders.termsQuery(null,1,2); // 精确查询 批量匹配
- QueryBuilders.matchQuery(null,null); //单个匹配 field不支持通配符, 前缀具高级特性
- QueryBuilders.matchAllQuery(); //查询所有
- QueryBuilders.multiMatchQuery("text","",""); //匹配多个字段, field有通配符忒行
- QueryBuilders.idsQuery(); //根据id查询
- QueryBuilders.constantScoreQuery(boolQueryBuilder).boost(12.12f); //包裹查询, 高于设定分数, 不计算相关性
- QueryBuilders.disMaxQuery(); // 对子查询的结果做union, score沿用子查询score的最大值,
- QueryBuilders.fuzzyQuery("",""); //模糊查询 不能用通配符
- QueryBuilders.moreLikeThisQuery(new String[2]); //基于内容的查询
- QueryBuilders.boostingQuery();//它接受一个positive查询和一个negative查询。只有匹配了positive查询的文档才会被包含到结果集中,但是同时匹配了negative查询的文档会被降低其相关度,通过将文档原本的_score和negative_boost参数进行相乘来得到新的_score
- QueryBuilders.functionScoreQuery(); //根据权重分查询
- QueryBuilders.rangeQuery(); //范围查询
- QueryBuilders.spanNearQuery() //跨度查询
- QueryBuilders.wildcardQuery("user", "ki*hy") //通配符查询
- QueryBuilders.nestedQuery() //嵌套查询