光看这些定义可以会有一种讲的都是什么的感觉,下面就用一种图形将它们简单的介绍一下,然后再通过具体的实例进行测试。
下图中一个圆圈代表一个表,其中蓝色的代表左表,白色的代表右表
从图上再来看几种连接就会清楚很多。
内连接:就是图中的C部分
左外连接:就是图中的A+C部分
右外联结:就是图中的B+C部分
建立两种表分别是Table_a Table_b,在表中添加几条记录;如下图
--内连接(inner) 可以省略inner select a_UserID,b_StudentID from Table_a inner join Table_b on a_UserID = b_StudentID
--外连接之左连接 也可以写成left join(省略outer) select a_UserID,b_StudentID from Table_a left outer join Table_b on a_UserID = b_StudentID
--外连接之右连接 也可以写成 right join(省略outer)
select a_UserID,b_StudentID from Table_a
right outer join Table_b on a_UserID = b_StudentID
--全外连接 select a_UserID , b_StudentID from Table_a full outer join Table_b on a_UserID=b_StudentID
--自身连接 select s.a_ID , s.a_UserName, i.a_UserID, i.a_UserName from Table_a i join Table_a s on i.a_UserID = s.a_ID
--交叉连接 select i.a_UserID,t.b_StudentID from Table_a i cross join Table_b t select count(*) from Table_a i cross join Table_b t
结果
这篇文章介绍常用的查询方法的使用方法,通过图形将它的定义图形化,使得理解起来更加的简单。