JSON字段通过JSON_EXTRACT获取值后,in操作结果异常。

【 使用环境 】测试环境
【 OB or 其他组件 】OceanBase 4.2.3
【 使用版本 】OceanBase 4.2.3
【问题描述】
SQL语句:
select * from test_table
where JSON_EXTRACT(custom_fields_, ‘$.FIELDS2022123021’) in (‘123’, ‘456’) and id_=622322518430441472

cumstom_fields_ 的值为:

期望获取该记录,但是MySQL和OceanBase结果不一致:
1、MySQL可正常获取该值。

2、OceanBase无法获取该值。

在OceanBase中,只能调整为完全匹配才可获取该记录:
select * from test_table
where JSON_EXTRACT(custom_fields_, ‘$.FIELDS2022123021’) in (‘123’) and id_=622322518430441472

【复现路径】问题出现前后相关操作
如问题描述,JSON_EXTRACT在in操作会出现数据丢失。

我们内部复现排查下