Open qiwihui opened 5 years ago
curl -X<REST Verb> <Node>:<Port>/<Index>/<Type>/<ID>
curl -XPOST 'localhost:9200/bank/_search?pretty' -d ' { "query": { "match_all": {} }, "_source": ["account_number", "balance"], "sort": { "balance": { "order": "desc" } } }'
bool must: 所有的查询都必须为真 bool should: 只要有一个查询匹配 bool must_not: 查询列表中的的所有查询都必须都不为真
bool must
bool should
bool must_not
_score: 指定的搜索查询匹配程度的一个相对度量。得分越高,文档越相关,得分越低文档的相关度越低。 Elasticsearch中的所有的查询都会触发相关度得分的计算。对于那些我们不需要相关度得分的场景下,Elasticsearch以过滤器的形式提供了另一种查询功能。
_score
过滤器在概念上类似于查询,但是它们有非常快的执行速度,这种快的执行速度主要有以下两个原因:
通常情况下,要决定是使用过滤器还是使用查询,你就需要问自己是否需要相关度得分。如果相关度是不重要的,使用过滤器,否则使用查询。
curl -XPOST 'localhost:9200/bank/_search?pretty' -d ' { "query": { "filtered": { "query": { "match_all": {} }, "filter": { "range": { "balance": { "gte": 20000, "lte": 30000 } } } } } }'
doc['my_field'].value和_source.my_field之间的不同:
1
curl -X<REST Verb> <Node>:<Port>/<Index>/<Type>/<ID>
bool must
: 所有的查询都必须为真bool should
: 只要有一个查询匹配bool must_not
: 查询列表中的的所有查询都必须都不为真2. 执行过滤器
_score
: 指定的搜索查询匹配程度的一个相对度量。得分越高,文档越相关,得分越低文档的相关度越低。 Elasticsearch中的所有的查询都会触发相关度得分的计算。对于那些我们不需要相关度得分的场景下,Elasticsearch以过滤器的形式提供了另一种查询功能。过滤器在概念上类似于查询,但是它们有非常快的执行速度,这种快的执行速度主要有以下两个原因:
通常情况下,要决定是使用过滤器还是使用查询,你就需要问自己是否需要相关度得分。如果相关度是不重要的,使用过滤器,否则使用查询。
3
doc['my_field'].value和_source.my_field之间的不同:
参考