Oracle中引入的JSON函数
Oracle 中引⼊的 SQL / JSON 函数
本⽂提供了 Oracle Database 12c 第 2 版(12.2)中引⼊的 SQL / JSON 函数的基本⽰例。
建⽴测试表及数据
本⽂中的⽰例使⽤以下表:
CREATE TABLEDEPT (
DEPTNO NUMBER(2) CONSTRAINT PK_DEPT PRIMARYKEY,
DNAME VARCHAR2(14),
LOC VARCHAR2(13)
) ;
CREATE TABLEEMP (
EMPNO NUMBER(4) CONSTRAINT PK_EMP PRIMARYKEY,
ENAME VARCHAR2(10),
JOB VARCHAR2(9),
MGR NUMBER(4),
HIREDATE DATE,
SAL NUMBER(7,2),
COMM NUMBER(7,2),
DEPTNO NUMBER(2) CONSTRAINT FK_DEPTNOREFERENCES DEPT
);
INSERT INTODEPT VALUES (10,'ACCOUNTING','NEW YORK');
INSERT INTODEPT VALUES (20,'RESEARCH','DALLAS');
INSERT INTODEPT VALUES (30,'SALES','CHICAGO');
INSERT INTODEPT VALUES (40,'OPERATIONS','BOSTON');
INSERT INTOEMP VALUES(7369,'SMITH','CLERK',7902,to_date('17-12-1980','dd-mm-
yyyy'),800,NULL,20);
INSERT INTOEMP VALUES (7499,'ALLEN','SALESMAN',7698,to_date('20-2-1981','dd-mm-
yyyy'),1600,300,30);
INSERT INTOEMP VALUES(7521,'WARD','SALESMAN',7698,to_date('22-2-1981','dd-mm-
yyyy'),1250,500,30);
INSERT INTOEMP VALUES(7566,'JONES','MANAGER',7839,to_date('2-4-1981','dd-mm-
yyyy '),2975,NULL,20);
INSERT INTOEMP VALUES(7654,'MARTIN','SALESMAN',7698,to_date('28-9-1981','dd-mm-
yyyy'),1250,1400,30);
INSERT INTOEMP VALUES (7698,'BLAKE','MANAGER',7839,to_date('1-5-1981','dd-mm-
yyyy'),2850,NULL,30);
INSERT INTOEMP VALUES(7782,'CLARK','MANAGER',7839,to_date('9-6-1981','dd-mm-
yyyy'),2450,NULL,10);
INSERT INTOEMP VALUES(7788,'SCOTT','ANALYST',7566,to_date('13-JUL-87','dd-mm-rr')-
85,3000,NULL,20);
INSERT INTOEMP VALUES(7839,'KING','PRESIDENT',NULL,to_date('17-11-1981','dd-mm-
yyyy'),5000,NULL,10);
INSERT INTOEMP VALUES(7844,'TURNER','SALESMAN',7698,to_date('8-9-1981','dd-mm-
yyyy'),1500,0,30);
INSERT INTOEMP VALUES (7876,'ADAMS','CLERK',7788,to_date('13-JUL-87','dd-mm-rr')-
51,1100,NULL,20);
INSERT INTOEMP VALUES(7900,'JAMES','CLERK',7698,to_date('3-12-1981','dd-mm-
yyyy'),950,NULL,30);
INSERT INTOEMP VALUE