oracle11g-编写处理json字符串functions
Oracle 11g 支持处理 JSON 字符串的功能,以下是其中一些常用的函数:
- JSON_OBJECT:用于创建 JSON 对象。
语法:JSON_OBJECT(key1, value1 [, key2, value2, ...])
示例:
SELECT JSON_OBJECT('name', 'Alice', 'age', 25) FROM dual;
输出:{"name":"Alice","age":25}
- JSON_ARRAY:用于创建 JSON 数组。
语法:JSON_ARRAY(value1 [, value2, ...])
示例:
SELECT JSON_ARRAY('Alice', 25, 'female') FROM dual;
输出:["Alice",25,"female"]
- JSON_QUERY:用于提取 JSON 对象中的特定值。
语法:JSON_QUERY(json_object, path)
示例:
SELECT JSON_QUERY('{"name":"Alice", "age":25}', '$.age') FROM dual;
输出:25
- JSON_TABLE:用于将 JSON 对象转换为表格形式。
语法:JSON_TABLE(json_object, path COLUMNS (column1 datatype, column2 datatype, ...))
示例:
SELECT * FROM JSON_TABLE('{"employees":[{"name":"Alice", "age":25}, {"name":"Bob", "age":30}]}' , '$.employees[*]' COLUMNS (name varchar2(20) PATH '$.name', age number PATH '$.age'));
输出:
NAME AGE
Alice 25 Bob 30
- JSON_EXISTS:用于检查 JSON 对象中是否存在指定的路径。
语法:JSON_EXISTS(json_object, path)
示例:
SELECT JSON_EXISTS('{"name":"Alice", "age":25}', '$.name') FROM dual;
输出:1
原文地址: https://www.cveoy.top/t/topic/rDu 著作权归作者所有。请勿转载和采集!