首页 > 数据库技术 > 详细

MySQL-实体映射关系和连接查询

时间:2020-12-17 15:47:42      阅读:34      评论:0      收藏:0      [点我收藏+]

 一 数据库实体的映射关系

1. 一对一:学生表和学生档案表,一个学生只有一个对应的档案。

2. 一对多/多对一:一个球队友多个球员(一对多),多个球员属于一个球队(多对一)

3. 多对多:一个学生可以选多门课程,一门课程可以被多个学生选修。

二 连接查询

1. 交叉连接 cross join 

  建表如下:

  技术分享图片技术分享图片

  结果:等于笛卡尔积,行数=表A行数*表B行数,列数=select 的列数

  技术分享图片

 

2. 内连接:...a inner join b on a.aa = b.bb...

  建表如下

  技术分享图片技术分享图片

 

   结果:只取符合on 过滤条件的结果。结果行数与连接的表格行数没有半毛钱关系,可>/=/<。列数=列数=select 的列数

技术分享图片

 

 3. 左外连接:...a left join b on a.aa = b.bb...

  使用 2.内连接 的表

  结果:行数>=左表行数,列数=select 的列数。左表的记录都在(且可能重复),当右表没有与左边对应的记录时,则置NULL。

 技术分享图片

如下,将左右表调换,on条件不变,输出的结果不一样。

技术分享图片

 

 

 

 

 

MySQL-实体映射关系和连接查询

原文:https://www.cnblogs.com/zhoujie0710/p/14143969.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!