开发者社区 问答 正文

elasticsearch java QueryBuilder 如何拼写,求救!!!:报错

sql: select * from table where active=1 and ( name like '%?%' or code like '%?%' )
如上SQL,
elasticsearch 用java client代码怎么写呢?
如果QueryBuilder像下面这么写,会查询所有的active=1数据,只是匹配度高的在前面,不匹配的也会查出来
QueryBuilder qb = QueryBuilders
.boolQuery()
.must(new QueryStringQueryBuilder("1").field("active"))
.should(QueryBuilders.matchQuery("name", 参数))
.should(QueryBuilders.matchQuery("code", 参数));


期望的查询效果是,查询active=1 ,且name或者code和参数匹配的数据.
求大神指教!!!!


展开
收起
kun坤 2020-06-14 08:30:47 487 分享 版权
0 条回答
写回答
取消 提交回答