亲,只收二进制

前台用户拼接多个查询条件,es怎么动态封装查询语句呢?

Elasticsearch | 作者 skyemin | 发布于2020年08月05日 | 阅读数:3125

比如前台条件(a=1 and b=2) or (c = 3 and d= 4)  按f排序
前台复杂的条件嵌套通过什么方式传递给后台,后台拿到参数怎么解析去动态封装成es的查询语句,?大佬们有没有思路?
已邀请:

FFFrp

赞同来自: skyemin

search template 看看

tacsklet - 公司有用到es

赞同来自:

可以参考elasticsearch-sql的插件,用Druid SQL 解析引擎将sql解析为抽象语法树,然后根据这个转换为DSL。

f_on

赞同来自:

拼接的查询语句做整体替换到模板中是不是一个思路??

viewsite

赞同来自:

参考query string,直接就支持 分隔符

GET /_search { "query": { "query_string": { "query": "(new york city) OR (big apple)", "default_field": "content" } } }
 

要回复问题请先登录注册