最近我修复了一些错误:在连接条件下有rownum.
这样的事情:在t1.id = t2.id和rownum <2上左连接t1.因此无论"左连接"如何,它都应该只返回一行.
当我进一步研究这个时,我意识到我不明白Oracle如何在"左连接"条件下评估rownum.让我们创建两个样本表:主表和细节表.
create table MASTER
(
ID NUMBER not null,
NAME VARCHAR2(100)
)
;
alter table MASTER
add constraint PK_MASTER primary key (ID);
prompt Creating DETAIL...
create table DETAIL
(
ID NUMBER not null,
REF_MASTER_ID NUMBER,
NAME VARCHAR2(100)
)
;
alter table DETAIL
add constraint PK_DETAIL primary key (ID);
alter table DETAIL
add constraint FK_DETAIL_MASTER foreign key (REF_MASTER_ID)
references MASTER (ID);
prompt Disabling foreign key constraints for DETAIL...
alter table DETAIL disable constraint FK_DETAIL_MASTER;
prompt Loading …Run Code Online (Sandbox Code Playgroud)