遇到了查询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"
}
}
}
}')