oracle中在WHERE条件里写输入:
select * from usermenu
left join sysuser on sysuser.yhdh=usermenu.yhdh
left join program on program.cxdh=usermenu.cxdh
即可关联起来。
关联也分为好几种:
SELECT * FROM TABLE1 A,TABLE2 B,TABLE3 C WHERE A.FIELD_KEY=B.FIELD_KEY AND B.FIELD_KEY=C.FIELD_KEY (正常关联)
SELECT * FROM TABLE1 A,TABLE2 B,TABLE3 C WHERE A.FIELD_KEY=B.FIELD_KEY(+) AND B.FIELD_KEY=C.FIELD_KEY(+) (左关联)
SELECT * FROM TABLE1 A,TABLE2 B,TABLE3 C WHERE A.FIELD_KEY(+)=B.FIELD_KEY AND B.FIELD_KEY(+)=C.FIELD_KEY (右关联)
要把Oracle将三张表关联起来时可以使用Oracle Database的指令,也就是Oracle数据库的指令将其关联。
数据库多表关联,一般采用外键比较方便,也可以额外建一个连接表做多表关联的连接,但这样稍微有点儿复杂,这些是建表方面的关联。查询关联,可以采用多表查询的方式关联查询,这点要求稍高点儿,但关联后再 *** 作单表时,别的表不用受太大的影响,这点特好。把三个表自然连接在一起的方法如下:
1 有关联
select *
from a left join b on a.id=b.id
left join c on b.id=c.id
2 无关联
select id
from a
union all
select id
from b
union all
select id
from c
其中:
inner join 只显示符合条件的数据行,此为默认的join方式,inner 可以省略;
left join 显示符全条件的数据行及左边数据表中不符合条件的数据行;
right join 显示符全条件的数据行及右边数据表中不符合条件的数据行;
full join 显示符全条件的数据行及左边和右边数据表中不符合条件的数据行;
cross join 直接将一个数据表的每一条数据行和另一个数据表的每一条数据行搭配成新的数据 行,不要on 来设置条件。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)