如果为空,DB2将json_object显示为null

eoigrqb6  于 2023-01-13  发布在  DB2
关注(0)|答案(1)|浏览(235)

如果列FORMATTED_JSON是空的,我希望它的select输出为null,而不是空对象,这意味着

IDENTIFIER | FORMATTED_JSON
1          | null

这是一个查询:

SELECT IDENTIFIER, JSON_OBJECT('NAME' VALUE name, 'SIZE' VALUE SIZE FORMAT JSON ABSENT ON NULL) FORMATTED_JSON
FROM ABC
cqoc49vn

cqoc49vn1#

SELECT 
  IDENTIFIER
, NULLIF (JSON_OBJECT ('NAME' VALUE name, 'SIZE' VALUE SIZE ABSENT ON NULL), '{}') FORMATTED_JSON
FROM 
(
  VALUES 
    (1, 'N1', 'S1') 
  , (2, 'N2', NULL)
  , (3, NULL, NULL)
) ABC (IDENTIFIER, NAME, SIZE)

| 标识符|格式化_JSON|
| - ------|- ------|
| 1个|{“名称”:“N1”,“尺寸”:“S1”}|
| 第二章|{“姓名”:“N2”}|
| 三个||

相关问题