在DB2中解析JSON

8mmmxcuj  于 2022-11-07  发布在  DB2
关注(0)|答案(1)|浏览(804)

我尝试在DB2中解析JSON字段。我可以在Oracle中使用JSON_VALUE和JSON_TABLE而不会出现问题,但在DB2中却出现错误。
如果我在Oracle中从DUAL运行这个简单的测试,它返回currenttimestamp和100。当我在DB2中尝试它时,它返回currenttimestamp,但JSON_VALUE出现错误。我已经默认它为'Not Found',否则它是空值/空白值。

SELECT CURRENT TIMESTAMP AS CURRENT_TIMESTAMP,
       JSON_VALUE('{a:100}', '$.a' DEFAULT 'Not found' ON ERROR) AS JSON_PARSE
FROM SYSIBM.SYSDUMMY1
dgjrabp2

dgjrabp21#

这个错误似乎是由JSON_VALUE的无效JSON输入引起的。这对我很有效(用引号括住“a”):

SELECT CURRENT TIMESTAMP AS CURRENT_TIMESTAMP,
       JSON_VALUE('{"a":100}', '$.a' DEFAULT 'Not found' ON ERROR) AS JSON_PARSE
FROM SYSIBM.SYSDUMMY1

Oracle是否接受无效的JSON对象?

相关问题