概述

  • URI Search是通过Get方式在Url中使用查询参数进行查询
  • url最后必须以/_search标明是一次查询请求。

    指定查询索引

    指定一个查询索引

  • /indexName1/_search

    指定多个查询索引

  • /indexName1,indexName2/_search

    模糊指定索引

  • /indexname*/_search

    不指定索引,查全部

  • /_search

    查询参数

    q

  • url参数

  • 指定查询语句
  • http://elasticsearch:9200/indexName/_search?q=fieldName:zhangsan

    • q就是查询参数的参数名
    • 用冒号作为查询key和查询value的分隔符

      df

  • url参数

  • 默认字段,就是指定查询的字段。
  • 不指定时,查询所有字段

    sort

  • url参数

  • 指定排序字段,还有正序倒序
  • ex:

    • sort=age:desc

      from

  • url参数

  • 分页,起始位置

    size

  • url参数

  • 分页,单页数量

    profile

  • body中的json参数

  • 查询显示本次查询执行的详情

    其他查询能力

    Phrase查询

  • 分此后要求顺序前后一致

  • 就是q查询参数中带引号
  • Ctitle:"hello world"

    分组查询

  • 就是q查询参数中,用括号括起来。

  • GET /indexName/_search?q=title:(+hello -world)
  • "+"表示必须包含, URI中,+用2%表示
  • "-"表示必须不包含

    范围查询

  • GET /indexName/_search?q=year:{* TO 2018}

  • {}开期间,[]闭区间
  • *表示不限

    符号查询

  • year:>2000

  • year:(>2000 && <=2018)
  • year:(+>2010 && +<=2018)

    通配符查询

    正则查询

    模糊查询与近似匹配