摘要:
主要知识点: 对一个field索引两次来解决字符串排序问题 实际程序中,如果对一个query string进行搜索,然后再按这个query string所搜索的string field进行排序的话,结果往往不准确,因为在搜索时是对query string进行分词后再搜索的,分词后的string field就变成多个单词,再排序的话就是按照这些单词的_source进行排序,而... 阅读全文
摘要:
主要知识点 默认排序 自定义排序 一、默认排序规则 es在默认情况下,是对搜索结果按照各个结果document的_score降序排序的。 然而,某些情况下,可能没有有用的_score,比如说直接用filter,可用constant_score这种情况下其实并没有真正的排序。 GET /_search { "query" : { "b... 阅读全文
摘要:
主要知识点 _validate 假设写了一个很长的搜索语句,在执行这条语句之前应先验证搜索是否合法,是否有错误。 语法: GET /index/type/_validate/query?explain {搜索语句体} 示例 GET /company/employee/_validate/query?explain { "query":{ "math_all":{} ... 阅读全文
摘要:
主要知识点: bool组合查询 bool和filter组合查询 bool,filter嵌套查询 直接用filter查询,并以_score排序 一、bool组合查询 GET /website/article/_search { "query": { "bool": { "must": [ { ... 阅读全文
摘要:
主要知识点 match all match multi match range query term query terms query exist query 1、match all 查询所有 GET /_search { "query": { "match_all": {} } } 示例: GET /company/employee... 阅读全文
摘要:
主要知识点 1、filter与query用在同一次查询中的语法 2、filter与query使用场景对比 3、二都的性能比较 一、filter与query示例 1、先准备数据 PUT /company/employee/1 { "address": { "country": "china", "province": "guangdong... 阅读全文
摘要:
主要知识点 1、Query DSL的理解及基本语法 2、如何组合多个搜索条件 bool 一、Query DSL的理解 Query DSL的查询形式如下: GET /_search { "query": { "match_all": {} } } 在37小节中我们学到到query string 的语法,这里学习另外一种搜索语法, Q... 阅读全文
摘要:
主要知识点 1、_search api基本语法 2、http协议中get请求带上request body 一、search api的基本语法 1、GET /_search {所传递的参数} 如果为空就是查所有的数据,为空的话,可以不写{}。 2、GET /index1,index2/type1,type2/_search {所传递的参数} GET /_se... 阅读全文