Elasticsearch学习5

》春节Flag没有达成,,…继续上次的学习

【21ES的查询-terms查询】

6.1.2 terms查询
terms和term的查询机制是一样,都不会将指定的查询关键字进行分词,直接去分词库中匹配,找到相应文档内容。
terms是在针对一个字段包含多个值得时候使用。
term:where provice = 北京
terms:where provice=北京 or provice=上海 or……即 in(……)

  • kibana中
    ES-kibana的terms查询
  • java实现terms查询
    ES-java实现terms-大纲
    ES-java实现terms-详细
  • 也可以进行其他字段的查询
    搜索在线分词器,查看分词结果
    如:sojson.com/analyzer
    ES-在线分词器测试
    ps:
    1.term不仅可以查询keyword,也可以查询text文本;
    2.当文档属性中存在“奋斗的时代”时,
    “奋斗的时代”可以被分词器分为“奋斗,奋,斗,时代”;
    使用terms查询“奋斗的时代”,由于不会对查询关键词进行分词,故搜索不到结果;而使用terms查询“奋斗”,可以查询到结果。
    ES-terms查询
【22.ES的查询-match_all查询】

match查询属于高层查询,他会根据查询的字段类型不一样,采用不同的查询方式。

  • 查询的是日期或者数值,它会将基于字符串的查询内容转换为日期或者数值对待;
  • 如果查询的内容是一个不能被分词的内容(keyword),mathch查询不会对你指定的查询关键字进行分词;
  • 如果查询的内容是一个可以被分词的内容(text),match会将指定的查询内容根据一定的方式分词,去分词库中匹配制定的内容。
    mathch查询,实际底层就是多个term查询,将多个term查询结果封装到一起。
    6.2.1 match_all查询
    查询全部内容,不指定任何查询条件。
    PS:由于没有查询条件,查询到的结果分数都为1。
    ES-mathc-all查询
    使用java实现:
    ES-match-all查询java实现1
    ES-match-all-java实现2
    注意:
    1.ES默认查询10条数据,但可以展示查询到的总数据数;
    2.给build设置size值,可以查询相应的数量ES-设置查询数量
【23.ES的查询-match_all查询和布尔match查询】

6.2.2 mathc查询
根据某个field查询数据。
ES-match查询
java实现
ES-mathc查询java实现

  • 布尔match查询
    基于一个field匹配的内容,采用and或者or的方式连接。
    ES-布尔match查询
    java实现
    ES-布尔match的java实现
【24.ES的查询-multiMatch查询】

6.2.4 multi_match查询
match针对一个field检索,multi_match针对多个field检索,多个field对应一个text。
ES-multi-match查询
java实现
ES-multimatch的java实现

【25.ES的查询-id&ids查询】

6.3 其他查询
6.3.1id查询-简单的查询
根据id查询,相当于where id=?
(1)GET /索引/类型/id
id查询ES
(2)java实现
ES-id查询Java实现
6.3.2 ids查询-不是简单的查询,是query查询
根据多个id查询,相当于where id in (,,*……)
(1)ES实现
ES-id简单查询
注意:查出结果的max_score匹配分为1,因为是直接匹配方式。
(2)Java实现
ES-ids查询Java实现
》to be continue

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值