五分钟带你玩转Elasticsearch(十三)ElasticsearchTemplate查询语句全详解
【摘要】
// 返回对象 Result<List<ActionLogVO>> result = new Result(); NativeSearchQueryBuilder builder = new NativeSearchQueryBuilder(); Bo...
-
// 返回对象
-
Result<List<ActionLogVO>> result = new Result();
-
NativeSearchQueryBuilder builder = new NativeSearchQueryBuilder();
-
BoolQueryBuilder bool = QueryBuilders.boolQuery();
-
-
-
//must为and的语法
-
//matchPhraseQuery为将type分词 然后将第二个参数匹配 可以模糊查询使用
-
bool.must(QueryBuilders.matchPhraseQuery("Type", "日志"));
-
-
//wildcardQuery模糊查询使用 但是字段需要未英文
-
bool.must(QueryBuilders.wildcardQuery("userName", "*admin*"));
-
-
-
//通过时间筛选
-
List<QueryBuilder> filters = bool.filter();
-
filters.add(QueryBuilders.rangeQuery("time").gte(sd.parse("2021-01-19 17:28:41"))
-
.lte(sd.parse("2021-01-19 17:28:43")));
-
-
-
//分页(第一个参数PageNum从第0页开始 第二个参数pageSize)
-
builder.withPageable(PageRequest.of(1, 10));
-
-
//排序
-
builder.withSort(SortBuilders.fieldSort("time").order(SortOrder.ASC));
-
-
-
// 构造查询条件
-
builder.withQuery(bool);
-
NativeSearchQuery query = builder.build();
-
Iterable<XXXVO> resultIter = XXXXService.search(query);
文章来源: baocl.blog.csdn.net,作者:小黄鸡1992,版权归原作者所有,如需转载,请联系作者。
原文链接:baocl.blog.csdn.net/article/details/112857250
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)