灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:2948回复:0

[mysql]Mysql之左连接右连接内连接——示例

楼主#
更多 发布于:2013-07-08 13:22
很少用到数据库,基本上只会简单的增删选改。前些日,面试的时候被问到左连接右连接,然后...然后就没有然后了。
网上搜了一些资料,自己又示例操作了一遍,总算有点明白了。现在记录于此,以便日后查阅。
话不多说,请看示例。
下面是两张表
表stu

图片:613678.jpg


表tech

图片:189515.jpg



1.右连接
当使用右连接语句查询时,返回结果如下:

[code ]1 SELECT stu.id,stu.name,stu.classe_name,tech.id,tech.name FROM stu RIGHT JOIN tech on stu.classe_name=tech.classe_name;[/code]
 

图片:252533.jpg


从结果中可以看出,tech表中被查询的字段会被全部显示出来,而stu表中,只有与表tech的classe_name相同的条目的相应字段才会被显示出来。
右连接即:返回右边表中所有被查询字段+左边表中符合条件的字段。
2.左连接
当使用左连接语句查询时,返回结果如下:

[code ]1 SELECT stu.id,stu.name,stu.classe_name,tech.id,tech.name FROM stu LEFT JOIN tech on stu.classe_name=tech.classe_name;[/code]
 

图片:480958.jpg


从结果中可以看出,stu表中被查询的字段会被全部显示出来,而tech表中,只有与表stu的classe_name相同的条目的相应字段才会被显示出来。
左连接即:返回左边表中所有被查询字段+右边表中符合条件的字段。
3.内连接
当使用内连接语句查询时,返回结果如下:

[code ]1 SELECT stu.id,stu.name,stu.classe_name,tech.id,tech.name FROM stu INNER JOIN tech on stu.classe_name=tech.classe_name;[/code]
 

图片:551056.jpg


从结果中可以看出,stu表与tech表中classe_name相同的条目都会被显示出来。
内连接:返回表中符合条件的条目。

喜欢0 评分0
游客

返回顶部