遇到了查询doris es外表 需要保证某个字段不为空的情况,经过多次实验,查询方法如下

select *
from table
where field1 = '' and field2 = ''
  and esquery(`field3`,'{
    "wildcard": {
      "field3": {
        "value": "*"
      }
    }
}')
order by xxx desc
limit xx

如上sql所示,是要查询field1 = ‘’ and field2 = ''并且field3不为空字符串的情况,后面加排序、limit 都如常,其中esquery可以带各种es查询语句,具体可以参考es如果查询,如下示例,如果想要field3不为null可如下查询

  and esquery(`field3`,'{
        "bool": {
            "must": {
                "exists": {
                    "field": "field3"
                }
            }
        }
}')

doris on es 官网内容

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐