GET my_store/_search
{"query":{"term":{"productName":{"value":"ZHANGSAN"//zhangsan}}}}
GET my_store/_search
{"query":{"term":{"productName.keyword":{"value":"ZHANGSAN"}}}}
1.2 复合查询 -Constant Score 转为Filter
将Query 装成Filter,忽略TF-IDF,避免相关性算分的开销
Filter可以有效利用缓存
即便是对KeyWord进行Term 查询,同样会进行算分
可以将查询转为Filtering,取消相关性算分的环节,以提升性能
POST my_store/_search
{"explain":true,"query":{"constant_score":{"filter":{"term":{"productName.keyword":"ZHANGSAN"}},"boost":1.2}}}
1.3 基于全文的查询
基于全文本的查找
Match Query/Match Phrase Query /Query String Query
POST my_store/_search
{"query":{"match":{"content":{"query":"zhang san"}}}}"hits":{"total":3,"max_score":1.0942618,"hits":[{"_index":"my_store","_type":"products","_id":"AXdIzZf2EQcMCfQJ7URS","_score":1.0942618,"_source":{"content":"my name is zhang san"}},{"_index":"my_store","_type":"products","_id":"AXdIzcDtomOanSvnaKZX","_score":0.13112299,"_source":{"content":"my name is wang san"}},{"_index":"my_store","_type":"products","_id":"AXdIza-1omOanSvnaKZV","_score":0.13112299,"_source":{"content":"my name is li san"}}]}
1.4.1 Operator
可以使用Operator来控制 query
POST my_store/_search
{"profile":true,"query":{"match":{"content":{"query":"zhang san","operator":"and"}}}}
1.4.2 Match Phrase Query
引用位置的信息使其查询更加精准
POST my_store/_search
{"profile":true,"query":{"match_phrase":{"content":{"query":"zhang san","slop":1}}}}