-- Oracle 19c/21c: JSON_EQUAL Function (boolean output) SELECT json_data_1 FROM (SELECT '{"Item" : {"Description" : "Toy Story-1", "Unit Price" : 19.95, "UPC Code" : 1234567890 } }' json_data_1, '{"Item" : {"Description" : "Toy Story-1", "Unit Price" : 19.95, "UPC Code" : 1234567890 } }' json_data_2 FROM DUAL ) WHERE JSON_EQUAL(json_data_1, json_data_2) ; -- Since json_data_1, json_data_2 are the same, the -- boolean result is TRUE and json_data_1 is selected SELECT json_data_1 FROM (SELECT '{"Item" : {"Description" : "Toy Story-1", "Unit Price" : 19.95, "UPC Code" : 1234567890 } }' json_data_1, '{"Item" : {"Description" : "Toy Story-1", "Unit Price" : 19.95, "UPC Code" : 1234567891 } }' json_data_2 FROM DUAL ) WHERE JSON_EQUAL(json_data_1, json_data_2) ; -- Since json_data_2 (UPC Code) is different from -- json_data_1, the boolean result is FALSE -- and no data is selected
314