Both HTTP GET and HTTP POST can be used to execute search with body. Since not all clients support GET with body, POST is allowed as well.
搜索可以在多索引,多类型中进行
GET /_search -- 所有索引中搜索所有的类型
GET /gb/_search -- 在gb索引中搜索所有的类型
GET /gb,us/_search -- 在gb和us索引中搜索所有的类型
GET /g*,u*/_search -- 在任何以 g 或者 u 开头的索引中搜索所有的类型
GET /gb/user/_search -- 在gb索引中搜索user类型的文档
GET /gb,us/user,tweet/_search -- 在 gb 和 us 索引中搜索 user 和 tweet 类型
GET /_all/user,tweet/_search -- 在所有的索引中搜索 user 和 tweet 类型
已知文档的_id
GET /website/blog/123 -- 搜索 website 索引 blog 类型中 id 为 123 的文档
GET /website/blog/123?_source=title,text -- 返回数据仅包含 title 和 text 属性
HEAD /website/blog/123 -- 检查文档是否存在
搜索结果进行分页,可使用 "from" 和 "size"
GET /_search?size=10&from=30
或使用DSL语句
GET /_search
{
"from": 30,
"size": 10
}
除了通过索引、类型、ID进行搜索外:
为搜索增加条件,可使用 "query" 查询
为搜索结果增加排序规则,可使用 "sort" 排序
为搜索结果增加聚合分析,可使用 "aggs" 聚合
对搜索结果增加高亮显示,可使用 "hightlight"
网友评论