表结构是这样的
A表
id no name
A1 A1 A1B表
id no name
B1 B1 B1
B2 B2 B2
B3 B3 B3C表
id no name
C1 C1 C1
C2 C2 C2A_B表(A表和B表的关系表 ITEMID1是A表的id ITEMID2是B表的id)
ID ITEMID1 ITEMID2
A_B1 A1 B1
A_B2 A1 B2
A_B3 A1 B3
A_C表(A表和C表的关系表)
ID ITEMID1 ITEMID2
A_C1 A1 C1
A_C2 A1 C2现在我想得到这样的结果
AID ANO ANAME BID BNO BNAME CID CNO CNAME
A1 A1 A1 B1 B1 B1 C1 C1 C1
NULL NULL NULL B2 B2 B2 C2 C2 C2
NULL NULL NULL B3 B3 B3 NULL NULL NULL
A表
id no name
A1 A1 A1B表
id no name
B1 B1 B1
B2 B2 B2
B3 B3 B3C表
id no name
C1 C1 C1
C2 C2 C2A_B表(A表和B表的关系表 ITEMID1是A表的id ITEMID2是B表的id)
ID ITEMID1 ITEMID2
A_B1 A1 B1
A_B2 A1 B2
A_B3 A1 B3
A_C表(A表和C表的关系表)
ID ITEMID1 ITEMID2
A_C1 A1 C1
A_C2 A1 C2现在我想得到这样的结果
AID ANO ANAME BID BNO BNAME CID CNO CNAME
A1 A1 A1 B1 B1 B1 C1 C1 C1
NULL NULL NULL B2 B2 B2 C2 C2 C2
NULL NULL NULL B3 B3 B3 NULL NULL NULL
insert into a values ('A1','A1','A1');create table b (id varchar2(10),no varchar2(10),name varchar2(10));
insert into b values ('B1','B1','B1');
insert into b values ('B2','B2','B2');
insert into b values ('B3','B3','B3');create table c (id varchar2(10),no varchar2(10),name varchar2(10));
insert into c values ('C1','C1','C1');
insert into c values ('C2','C2','C2');create table a_b (id varchar2(10),ITEMID1 varchar2(10),ITEMID2 varchar2(10));
insert into a_b values ('A_B1','A1','B1');
insert into a_b values ('A_B2','A1','B2');
insert into a_b values ('A_B3','A1','B3');create table a_c (id varchar2(10),ITEMID1 varchar2(10),ITEMID2 varchar2(10));
insert into a_c values ('A_C1','A1','C1');
insert into a_c values ('A_C2','A1','C2');
commit;
其实和下边的一样也可以
AID ANO ANAME BID BNO BNAME CID CNO CNAME
A1 A1 A1 B1 B1 B1 C1 C1 C1
A1 A1 A1 B2 B2 B2 C2 C2 C2
A1 A1 A1 B3 B3 B3 NULL NULL NULL
A1 A1 A1 B1 B1 B1 C1 C1 C1
A1 A1 A1 B2 B2 B2 C1 C1 C1
A1 A1 A1 B3 B3 B3 C1 C1 C1
A1 A1 A1 B1 B1 B1 C2 C2 C2
A1 A1 A1 B2 B2 B2 C2 C2 C2
A1 A1 A1 B3 B3 B3 C2 C2 C2
没有关联条件,现在就是这样
我再试试