Elasticsearch按请求体基本查询

1 分页:

localhost:9200/get-together/_search

{
"query": {
"match_all": {}
},
"from": 10,
"size": 10
}

2 查询具体字段:

localhost:9200/get-together/_search

{
"query": {
"match_all": {}
},
"_source": ["name", "date"]
}

在指定字段时,你甚至可以使用通配符,比如你要查询name和nation,只要写na*就行了;你也可以指定你不想要返回的字段 "exclude": ["location.geolocation"],想要返回的字段:"include": ["location.*", "date"]。

3 排序:

如果没有指定任何排序的信息,es默认按照_score降序排序,score其实就是每个文档与你查询的匹配度。

自定义排序 :localhost:9200/get-together/_search

{
"query": {
"match_all": {}
},
"sort": [
{"created_on": "asc"},
{"name": "desc"},
"_score"
]
}

4 同时运用以上三个的完整查询:localhost:9200/get-together/group/_search

{
"query": {
"match_all": {}
},
"from": 0,
"size": 10,
"_source": ["name", "organizer", "description"],
"sort": [{"created_on": "desc"}]
}

时间: 2024-11-03 05:41:48

Elasticsearch按请求体基本查询的相关文章

ElasticSearch(七)--请求体查询

简单查询lite search (字符串查询)是一种有效的命令行ad hoc 查询,但是想要善用搜索,必须使用请求体查询request  body search API.之所以这么称呼,是因为大多数的参数以JSON格式所容纳,而不是查询字符串. 请求体查询不但可以处理查询,而且还可以高亮返回结果中的片段. 1.空查询 GET _search {} 同字符串查询一样,你可以查询一个,或多个索引及类型 GET /index_2014*/type1,type2/_search {} 也可以使用from

Django中获取参数(路径,查询,请求头,请求体)

一.通常HTTP协议向服务器传参有几种途径 : 提取URL的特定部分,如/weather/shanghai/2018,可以在服务器端的路由中用正则表达式截取: 查询字符串(query string),形如key1=value1&key2=value2: 请求体(body)中发送的数据,比如表单数据.json.xml: 在http报文的头(header)中. 1.URL中参数的获取 在定义路由URL时,可以使用正则表达式提取参数的方法从URL中获取请求参数,Django会将提取的参数直接传递到视图

新章节——请求体搜索(full body search)

轻量级的搜索--?query string search?--对命令行的即席查询来说是十分有用的.然而为了驾驭搜索的强大功能,你应该使用带请求体的search API,之所以这样,是因为很多的参数是在JSON的请求体中的而不是查询字符串. 请求体查询--从现在开始就是"search"--不仅仅自身处理查询,而且允许你高亮结果片段,也可以对结果集进行合并和分析,也能返回did-you-mean?suggestions这样的提示,帮助提示你的用户快速找到更好的结果. 原文:http://w

SolrCloud的Java客户端请求体过大导致的400错误

由于业务原因,Solr客户端发起的查询请求体数据太多,默认采用get方式超过 tomcat maxHttpHeaderSize. 方案: 增加 tomcat maxHttpHeaderSize 到32k,默认8k 修改solr客户端默认提交方式post maxBooleanClauses 建议1-5000

nginx请求体读取(二)

2,丢弃请求体 一个模块想要主动的丢弃客户端发过的请求体,可以调用nginx核心提供的ngx_http_discard_request_body()接口,主动丢弃的原因可能有很多种,如模块的业务逻辑压根不需要请求体 ,客户端发送了过大的请求体,另外为了兼容http1.1协议的pipeline请求,模块有义务主动丢弃不需要的请求体.总之为了保持良好的客户端兼容性,nginx必须主动丢弃无用的请求体.下面开始分析ngx_http_discard_request_body()函数: [cpp] vie

nginx请求体读取

上节说到nginx核心本身不会主动读取请求体,这个工作是交给请求处理阶段的模块来做,但是nginx核心提供了ngx_http_read_client_request_body()接口来读取请求体,另外还提供了一个丢弃请求体的接口-ngx_http_discard_request_body(),在请求执行的各个阶段中,任何一个阶段的模块如果对请求体感兴趣或者希望丢掉客户端发过来的请求体,可以分别调用这两个接口来完成.这两个接口是nginx核心提供的处理请求体的标准接口,如果希望配置文件中一些请求体

nginx源码分析--请求体的读取(1)

首先请求体的读取已经进入了HTTP请求的11个阶段,针对有些模块需要对请求体做一些处理,那么这个模块就需要在这个阶段注册函数,其中读取请求体的函数ngx_http_read_client_request_body()是存在的,只不过不同的模块可能对请求体做不同的处理,读取请全体的函数是在某个模块的conent_handler函数中包含的,比如比如proxy模块,fastcgi模块,uwsgi模块等这些模块对请求体感兴趣,那么读取请求体的函数在这些模块的content_handler中注册. 上节

python写http post请求的四种请求体

Web自动化测试(25) HTTP 协议规定 POST 提交的数据必须放在消息主体(entity-body)中,但协议并没有规定数据必须使用什么编码方式.常见的四种编码方式如下: 1.application/x-www-form-urlencoded 这应该是最常见的 POST 提交数据的方式了.浏览器的原生 form 表单,如果不设置 enctype 属性,那么最终就会以 application/x-www-form-urlencoded 方式提交数据.请求类似于下面这样(无关的请求头在本文中

RIDE 接口自动化请求体参数中文时报错:“UnicodeDecodeError: 'ascii' codec can't decode byte 0xd7 in position 9......”

在进行robotframework  接口自动化,在请求体参数中输入中文会报以下错误: UnicodeDecodeError: 'ascii' codec can't decode byte 0xd7 in position 9: ordinal not in range(128)..... 改mimetypes.py文件,路径位于python的安装路径下的Lib\mimetypes.py文件.在import下添加如下几行:解放参考如下: if sys.getdefaultencoding()