博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于数据库外连接和内连接和交叉连接
阅读量:4582 次
发布时间:2019-06-09

本文共 997 字,大约阅读时间需要 3 分钟。

一.外连接

1.left join

示例:SQL语句:select * from student left join course on student.ID=course.ID

左外连接包含left join左表所有行,如果左表中某行在右表没有匹配,则结果中对应行右表的部分全部为空(NULL).

2.右连接  right join 或 right outer join

SQL语句:select * from student right join course on student.ID=course.ID

右外连接包含right join右表所有行,如果左表中某行在右表没有匹配,则结果中对应左表的部分全部为空(NULL)。

3、完全外连接  full join 或 full outer join

SQL语句:select * from student full join course on student.ID=course.ID

完全外连接包含full join左右两表中所有的行,如果右表中某行在左表中没有匹配,则结果中对应行右表的部分全部为空(NULL),如果左表中某行在右表中没有匹配,则结果中对应行左表的部分全部为空(NULL)。

二.内连接

内连接  join 或 inner join

SQL语句:select * from student inner join course on student.ID=course.ID

此时相当于:select * from student,course where student.ID=course.ID

三.交叉连接

1.概念:没有 WHERE 子句的交叉联接将产生连接所涉及的表的笛卡尔积。第一个表的行数乘以第二个表的行数等于笛卡尔积结果集的大小。

SQL语句:select * from student cross join course

如果我们在此时给这条SQL加上WHERE子句的时候比如SQL:select * from student cross join course where student.ID=course.ID

此时将返回符合条件的结果集,结果和inner join所示执行结果一样。

 

转载于:https://www.cnblogs.com/dongkuitester/p/5087198.html

你可能感兴趣的文章
九度oj题目1002:Grading
查看>>
View 的measure 和onMeasure
查看>>
国外免费空间
查看>>
构建linux内核树
查看>>
Linux C 信号处理
查看>>
第三次作业
查看>>
tomcat
查看>>
MUI开发注意事项
查看>>
elasticsearch摸石头过河——常用数据类型(二)
查看>>
scrum立会报告+燃尽图(第三周第三次)
查看>>
[SQL] 获取 Microsoft SQL Server 2008 的数据表结构
查看>>
iOS进度指示器——NSProgress
查看>>
C语言strcat,ctrcpy函数原型和改进
查看>>
good bye 2015 B - New Year and Old Property
查看>>
(第4篇)hadoop之魂--mapreduce计算框架,让收集的数据产生价值
查看>>
万年历-农历-农历日期
查看>>
如何辞职
查看>>
SSO 单点登录总结(PHP)
查看>>
Ubuntu16.04下将hadoop2.7.3源代码导入到eclipse neon中
查看>>
朝令夕改的企业不值得留恋
查看>>