doris 版本:2.1.5
mysql:5.7.30
在使用 catalog 查询 mysql中的的表时,使用 json_extract 抽取 text 字段类型的 数组数据,如:['xxx','xxxx'],如果把 json_extract 放在 where 条件中,则不能返回任何数据,如下:
select id, JSON_UNQUOTE(JSON_EXTRACT(key_names, '$.[0]')), JSON_EXTRACT(key_names, '$.[1]') from catalog1.schema1.table1
where JSON_UNQUOTE(JSON_EXTRACT(key_names, '$.[0]')) = 'xxx'
如果不加where 条件,则可以正常的返回结果集。
总结:
1、使用 catalog 连接 远端的 mysql
2、使用 JSON_EXTRACT
3、把 JSON_EXTRACT 抽取后形成的新字段 放入 where 子句中
同时满足以上 3 个条件,则不能返回任何数据。
如果不使用 catalog 则可以正常返回:同样的方式查询内部表,可以正常返回