搜索所有内容
# curl -XGET 'http://localhost:9200/_search?pretty' # curl -XGET 'http://localhost:9200/_all/_search?pretty'
指定 _index 搜索
# curl -XGET 'http://localhost:9200/website/_search?pretty' # curl -XGET 'http://localhost:9200/website/news/_search?pretty'
指定 _type 搜索
# curl -XGET 'http://localhost:9200/website,twitter/_search?pretty' # curl -XGET 'http://localhost:9200/website/news,blog/_search?pretty' # curl -XGET 'http://localhost:9200/website,twitter/news,blog/_search?pretty'
所有 _index 包含指定 _type 搜索
# curl -XGET 'http://localhost:9200/_all/news,blog/_search?pretty'
字符串搜索
# curl -XGET 'http://localhost:9200/_all/_search?q=neo&pretty'
同时满足两个条件
+name:neo +age:30
查找name为mary 或者 john的数据
+name:(mary john)
查询姓名是neo或者jam并且年龄小于30岁同时1980-09-10之后出生的
+name:(neo jam) +age:<30 +date:>1980-09-10
该功能与SQL的LIMIT关键字结果一样,Elasticsearch接受size和from两个参数参数:
size: 返回结果集数量,默认10,用法与SQL中的 Limit相同
from: 偏移量,默认0,用法与 SQL中的 Offset相同
如果你想每页显示10个结果,那么请求如下:
第一页 GET /_search?size=10 第二页 GET /_search?size=10&from=10 第三页 GET /_search?size=10&from=20
原文出处:Netkiller 系列 手札
本文作者:陈景峯
转载请与作者联系,同时请务必标明文章原始出处和作者信息及本声明。