oracle json_serialize(...)即使输入不为null,也会返回null

b5buobof  于 2023-10-16  发布在  Oracle
关注(0)|答案(1)|浏览(139)

我有一个这样的查询:

select json_serialize(data) 
from mytable

其中data是包含JSON的列,但我从json_serialize返回null。这是个窃听器吗?

ix0qys7i

ix0qys7i1#

默认情况下,json_serialize返回VARCHAR2(4000)
参见:https://docs.oracle.com/en/database/oracle/oracle-database/19/adjsn/oracle-sql-function-json_serialize.html
当返回的JSON文本超过4000字节时,将被视为错误条件。但是,JSON_SERIALIZE的默认错误行为是NULL ON ERROR。
尝试添加RETURNING CLOB

select json_serialize(data returning clob) 
from mytable

相关问题