elasticsearch SpanNearQuery实例

SpanNearQuery主要用来精确查询。比如某个term之后 是另一个term,term之间的距离也可以自己设定,从而来实现精确搜索。
例如我们来搜索包含有“共青团中央下发实施意见”关键字的文章。

1.首先我们把”共青团中央下发实施意见”进行分词为:”共青团中央”,”下发”,”实施意见”。
2.设置slop为0.inOrder为true
代码如下:


SpanNearQueryBuilder span=QueryBuilders.spanNearQuery();
span.clause(QueryBuilders.spanTermQuery("content","共青团中央") );
span.clause(QueryBuilders.spanTermQuery("content","实施意见") );
span.inOrder(true).slop(0);
client.prepareSearch("test").setQuery(span).execute().actionGet();

你可能感兴趣的:(elasticsearch SpanNearQuery实例)