之前做左连接查询的时候,有一个错误的概念 总认为用来进行左连接的基础表数据是整个左连接结果的依据,
认为 左连接后的表数据量应该总小于等于基础表的数据量,其实是错误的,
现在有一个班级表 保存了一个班级的信息
create table class(
cid number(6,0) primary key not null,
classname nvarchar2(16) not null
)
有一个学生表 保存了两个学生的信息
create table students(
sid number(6,0) primary key not null,
sname nvarchar2(16) not null,
cid number(6,0)
)
通过cid进行关联 现在用班级表左连接查询学生表,查看产生的数据条数,之前错误的想法是 只会有基础表的数据量就是一条
实际上效果如下:
select c.*, s.* from class c
left join students s
on c.cid=s.cid;
内有两条数据,说明 班级是一对多的关系,数据量取决于 多方的数据量!