elasticSearch小结

1、matchQuery和termQuery区别

  matchQuery:会将搜索词分词,再与目标查询字段进行匹配,若分词中的任意一个词与目标字段匹配上,则可查询到。

  termQuery:不会对搜索词进行分词处理,而是作为一个整体与目标字段进行匹配,若完全匹配,则可查询到。

  wildcardQuery:模糊匹配, 是 term 级别的 query,支持通配符,如:QueryBuilders.wildcardQuery("content", "*全*")

2、must与should区别  

  must :  相当于 MySQL and 

  should : 相当于MySQL or (效率低)

3、如何查看一个字符串是如何分词的

GET /risk_user_his/_analyze
{
  "field": "deviceUuidFristLogin",
  "text": "EA760BCA-E3F3-4005-821C-54A6B1051B4D"
}

4、如何修改一个字段的映射,改为不分词

参考:  

Kibana界面的API操作ES:https://www.cnblogs.com/xll970105/p/11561537.html

es各种查询:https://www.colabug.com/2018/0902/4334463/

猜你喜欢

转载自www.cnblogs.com/wzk-0000/p/12361320.html
今日推荐