繁体   English   中英

弹性嵌套 boolean 查询的 output 之间的差异

[英]Diffrence between output of elastic nested boolean queries

我想知道以下两个弹性查询是否会导致不同的结果或相同的结果?

 {"bool":{"should":[{"bool":{"must":[{"terms":{"assignee.raw":["AHMEDABAD TEXTILE INDUSTRY'S RESEARCH ASSOCIATION","AHMEDABAD TEXTILE INDUSTRY'S RESERCH ASSOCIATION","AHMEDABAD TEXTILE INDUSTRY?S RESEARCH ASSOCIATION"]}},{"query_string":{"query":"(UNDER EXTENSION ) OR ( INFORCE)","default_operator":"AND","default_field":"legalStatusText"}}]}},{"terms":{"agent.agency.raw":["EPIPHANY IP SOLUTIONS PVT. LTD.","EPIPHANY IP SOLUTIONS PRIVATE LIMITED","EPIPHANY IP SOLUTIONS PVT. LTD"]}}]}}

和..........

 { "bool": { "should": [ { "bool": { "must": [ { "bool": { "must": [ { "terms": { "assignee.raw": [ "SANJAY BAJAJ", "GTG GMBH" ] } }, { "terms": { "agent.agency.raw": [ "JK STEEL", "ANAND AND ANAND" ] } } ] } }, { "query_string": { "query": "(EXPIRED) OR (APPLICATION WITHDRAWN)", "default_operator": "AND", "default_field": "legalStatusText" } } ] } } ] } }

基本上第二个片段中的 Extra bool:must对 output 有什么影响吗?

第一个查询是(A AND B) OR C

第二个查询是((A AND B) AND C) OR true

所以第一个和第二个查询是不等价的,因为区别不在于额外的bool/must

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM