假设A.表(左表)中有5行数据,B.表(右表)中有3行数据,执行左外连接查询,将返回几行数据?
5行。
外连接有3中,左、右、全,这题没写左右姑且算作full outer join,而full outer join结果个数,和两张表具体匹配情况有关,但肯定是>8的(因为full out join 包含inner join 匹配的记录)。
create table A
(
id int not null,
sname varchar(10) not null,
age int not null
)
insert into A values (1,'123',12)
insert into A values (2,'234',12)
insert into A values (3,'345',12)
create table B
(
id int not null,
sname varchar(10) not null,
age int not null
)
insert into B values (1,'123',12)
insert into B values (2,'234',12)
insert into B values (3,'345',12)
insert into B values (4,'456',12)
insert into B values (5,'567',12)
insert into B values (6,'678',12)
扩展资料:
outer join则会返回每个满足第一个(顶端)输入与第二个(底端)输入的联接的行。还返回任何在第二个输入中没有匹配行的第一个输入中的行。外连接分为三种:左外连接,右外连接,全外连接。对应SQL:LEFT/RIGHT/FULLOUTER JOIN。通常我们省略outer 这个关键字。写成:LEFT/RIGHT/FULL JOIN。
在左外连接和右外连接时都会以一张表为基表,该表的内容会全部显示,加上两张表匹配的内容。如果基表的数据在另一张表没有记录。那么在相关联的结果集行中列显示为空值(NULL)。
参考资料来源:百度百科-外连接
所以可能返回的行数为5到15行,我这么说是很粗略的个人理解,我觉得这样比较好记,太绕口的理解不能···欢迎追问