Oracle資料庫應用中幾種基本資料參考關聯性中的特殊查詢

來源:互聯網
上載者:User

--現有如下5個表,關聯關係為:table_3引用table_1和table_2,table_5引用table_4,table_4引用table_1
create table TABLE_1
(
  TABLE_1_COL_1 NUMBER(3),
  TABLE_1_COL_2 NVARCHAR2(20)
)
tablespace SYSTEM
  pctfree 10
  pctused 40
  initrans 1
  maxtrans 255
  storage
  (
    initial 64K
    minextents 1
    maxextents unlimited
  );

create table TABLE_2
(
  TABLE_2_COL_1 NUMBER(3),
  TABLE_2_COL_2 NVARCHAR2(20)
)
tablespace SYSTEM
  pctfree 10
  pctused 40
  initrans 1
  maxtrans 255
  storage
  (
    initial 64K
    minextents 1
    maxextents unlimited
  );

create table TABLE_3
(
  TABLE_3_COL_1 NUMBER(3),
  TABLE_3_COL_2 NVARCHAR2(20),
  TABLE_3_REF_1 NUMBER(3),
  TABLE_3_REF_2 NUMBER(3)
)
tablespace SYSTEM
  pctfree 10
  pctused 40
  initrans 1
  maxtrans 255
  storage
  (
    initial 64K
    minextents 1
    maxextents unlimited
  );

create table TABLE_4
(
  TABLE_4_COL_1 NUMBER(3),
  TABLE_4_COL_2 NVARCHAR2(20),
  TABLE_4_REF_1 NUMBER(3)
)
tablespace SYSTEM
  pctfree 10
  pctused 40
  initrans 1
  maxtrans 255
  storage
  (
    initial 64K
    minextents 1
    maxextents unlimited
  );
create table TABLE_5
(
  TABLE_5_COL_1 NUMBER(3),
  TABLE_5_COL_2 NVARCHAR2(20),
  TABLE_5_REF_4 NUMBER(3)
)
tablespace SYSTEM
  pctfree 10
  pctused 40
  initrans 1
  maxtrans 255
  storage
  (
    initial 64K
    minextents 1
    maxextents unlimited
  );

--table_5引用table_4,table4引用table_1,如何在table_5有資料,table_1沒有資料,且table_4沒有資料的情況下,列出的查詢結果中包含table_4和table_1的欄位
select layer_1.table_5_col_1 as 記錄需號,layer_1.table_5_col_2 as 基礎資料,
layer_2.table_4_col_2 as 直接引用值,layer_3.table_1_col_2 as 間接引用值
 from table_5 layer_1,table_4 layer_2,table_1 layer_3
 where layer_3.table_1_col_1(+) = layer_2.table_4_ref_1
 and layer_1.table_5_ref_4 = layer_2.table_4_col_1(+)

--table_3引用table_1和table_2,如何在table_3有資料,table_1或table_2沒有資料的情況下,列出的查詢結果中包含table_1和table_2的欄位
select table_3_col_1 ,table_3_col_2 ,table_1_col_1 ,table_1_col_2 ,table_2_col_2  from  table_1 , table_2 ,table_3
where table_3_ref_1 = table_1_col_1 (+)
and   table_3_ref_2  = table_2_col_1 (+)

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.