大家好,很高兴进入中文社区,刚刚接触es, 没有深入研究,在刚刚运用检索api 的时候就遇到了问题,很是头疼。希望大家百忙之中,帮我看看。
需求: elasticsearch 7.2.0, 一共有二个索引表,检索要求: 从多个表中全文检索全部内容,并且支持 and not 或 等常用关系,还要支持表里面的: nested object 里面的数据。
一开始我就想到了query_string 查询语句:
这样查询,全文检索多个表都可以查询到,但是如果遇到nested object 就查询不到结果。
最后看了官网的nested object 查询,更改了查询语句。
我利用 bool 查询,这样查询也存在一个问题,如果nested在第一张表里面,可以检索全部内容,如果第二张表里面没有nested object 指定的查询语句会报错。
需求: elasticsearch 7.2.0, 一共有二个索引表,检索要求: 从多个表中全文检索全部内容,并且支持 and not 或 等常用关系,还要支持表里面的: nested object 里面的数据。
一开始我就想到了query_string 查询语句:
这样查询,全文检索多个表都可以查询到,但是如果遇到nested object 就查询不到结果。
最后看了官网的nested object 查询,更改了查询语句。
我利用 bool 查询,这样查询也存在一个问题,如果nested在第一张表里面,可以检索全部内容,如果第二张表里面没有nested object 指定的查询语句会报错。
1 个回复
Ombres
赞同来自:
如果普通查询和nested要同时使用,请使用bool query进行组合