Empty Search
空搜索,它没有任何查询条件,查询集群中的所有索引。默认返回前10个文档;
curl -i -XGET 'http://localhost:9200/_search'
结果:
{ "took":1,
"timed_out":false,
"_shards":{
"total":5,"successful":5,
"skipped":0,"failed":0
},
"hits":{
"total":2,
"max_score":1,
"hits":[{
"_index":"city",
"_type":"south",
"_id":"2",
"_score":1,
"_source":{"cityName":"guangzhou"}
},{
"_index":"city",
"_type":"south",
"_id":"3",
"_score":1,
"_source":{"cityName":"xiamen"}
}
]}
}
对返回结果的简单说明:
1.took
:搜索请求所花费的时间毫秒数;
2.timeout
:查询是否超时,注意的是timeout
后并不会停止查询;
3._shards
:告诉我们参数查询的分片情况。total
表示分片个数,successful
表示成功的分片数,failed
表示失败的分片数,skipped
跳过的分片数;
4.hits:该部分的信息最总要。hits
数组包含一个个文档对象,每个文档对象有内容放在_source
中,由_index
(索引);_type
(类型);_id
(文档ID)组成,表示这些内容可以直接使用;_score
:文档相关性得分,表示文档与查询条件的匹配度;
-
total
:匹配到文档数量; -
max_score
:匹配的文档中_score
的最大值;
多索引、多类型搜索
空搜索的结果包含不同类型文档,并且来自于不同索引,其实还可以细化后进行搜索。假如现在有city
、company
索引。
- 在某个索引中查询所有文档
curl -i -XGET 'http://localhost:9200/city/_search'
- 在多个索引中查询所有文档
curl -i -XGET 'http://localhost:9200/city,company/_search'
- 匹配索引并查询所有文档
curl -i -XGET 'http://localhost:9200/c*/_search';匹配到以 c 开头的索引
分页搜索
Elasticsearch中接受from
和size
参数进行分页查询。
size : 表示每页的文档数量;
from : 表示页数,默认从0开始;
例如:
curl -i -XGET 'http://localhost:9200/city/south/_search?from=0&size=2'
利用分页查询时,要防止深度查询。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。