Improve JSON object

This commit is contained in:
Jan Kvetina 2021-12-31 19:42:40 +01:00
parent fecd7b47d3
commit bd4918b8c6

View File

@ -1293,6 +1293,7 @@ CREATE OR REPLACE PACKAGE BODY app AS
AS
v_obj JSON_OBJECT_T;
BEGIN
-- construct a key-value pairs
v_obj := JSON_OBJECT_T(JSON_OBJECT (
CASE WHEN (in_name1 IS NULL OR in_value1 IS NULL) THEN '__' ELSE in_name1 END VALUE in_value1,
CASE WHEN (in_name2 IS NULL OR in_value2 IS NULL) THEN '__' ELSE in_name2 END VALUE in_value2,
@ -1303,8 +1304,9 @@ CREATE OR REPLACE PACKAGE BODY app AS
CASE WHEN (in_name7 IS NULL OR in_value7 IS NULL) THEN '__' ELSE in_name7 END VALUE in_value7,
CASE WHEN (in_name8 IS NULL OR in_value8 IS NULL) THEN '__' ELSE in_name8 END VALUE in_value8
));
v_obj.REMOVE('__');
RETURN v_obj.STRINGIFY;
v_obj.REMOVE('__'); -- remove empty pairs
--
RETURN NULLIF(v_obj.STRINGIFY, '{}');
END;