Sql Oracle-如何使用JSON数据连接表?

Sql Oracle-如何使用JSON数据连接表?,sql,json,oracle,join,Sql,Json,Oracle,Join,我想创建一个需要从许多表中进行选择的视图,其中一个表中包含JSON数据。让我们假设它有这样一个定义 CREATE TABLE PERSON ( ID RAW(16) NOT NULL, OBJECT CLOB, CONSTRAINT JSON_DOCUMENTS_PK PRIMARY KEY (ID), CONSTRAINT JSON_DOCUMENTS_JSON CH

我想创建一个需要从许多表中进行选择的视图,其中一个表中包含JSON数据。让我们假设它有这样一个定义

CREATE TABLE    
    PERSON    
    (    
        ID RAW(16) NOT NULL,    
        OBJECT CLOB,    
        CONSTRAINT JSON_DOCUMENTS_PK PRIMARY KEY (ID),    
        CONSTRAINT JSON_DOCUMENTS_JSON CHECK (object IS JSON (STRICT))    
    ); 
其中的数据可以像这个例子一样

INSERT INTO person (id, object)    
VALUES (SYS_GUID(),    
        '{"data" : {    
          "FirstName"      : "Adam",    
          "LastName"       : "Doe",    
          "Job"            : "Clerk",    
          "DateOfBirth"    : "01-JAN-1980",    
          "Active"         : true    
         }}');
我想把它和

CREATE TABLE Salary (
    LastName varchar(255),
    FirstName varchar(255),
    Salary number(10) 
);

我没有看到直接这样做的例子。基本上,让我们假设我需要在一个单位的代表积极的人的工资。我需要创建JSON表的平面视图并与之连接还是使用with子句?

是的,在这种情况下,为每个人的JSON数据创建具有列(id、firstname、lastname、job、dob、ActiveStatus)的单独视图是很好的选择。加入salary和new personData视图以获得加入的结果会更简单。我认为没有其他方法可以实现用CLOBJSON数据连接表