美文网首页
ES查询操作

ES查询操作

作者: xhlc02 | 来源:发表于2022-08-08 12:11 被阅读0次

1.通过multi_match进行多字段匹配查询

GET index_test/_search
{
  "query": {
    "multi_match": {
      "query": "测试",
      "fields": ["title","titleName"]
    }
  }
}

# java代码的实现
String[] field = new String[]{"title", "titleName"};
QueryBuilders.multiMatchQuery(param.getKeyWord(),field );

2.提高字段的权重查询

GET index_test/_search
{
  "query": {
    "multi_match": {
      "query": "测试",
      "fields": ["title^2","titleName^1"]
    }
  }
}

# java代码的实现
String[] field = new String[]{"title", "titleName"};
Map<String,Float> fields = new HashMap(2);
fields.put("company", 2.0f);
fields.put("titleName", 1.0f);
QueryBuilders.multiMatchQuery(param.getKeyWord(),field ).fields(fields);

相关文章

网友评论

      本文标题:ES查询操作

      本文链接:https://www.haomeiwen.com/subject/imknwrtx.html