• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

mysql的多表联系关系

mysql 搞代码 4年前 (2022-01-09) 21次浏览 已收录 0个评论

mysql的多表关联 ? ? 数据库中经常要用到多个表的关联。mysql的关联主要包括inner join,left join,right join三种,下面分别加以介绍,并举例说明。 ? ? 顾名思义,inner join集合了两个表的信息,只有都包含的才关联在一起。 ? ? left join以第一个表为准

mysql的多表关联

? ? 数据库中经常要用到多个表的关联。mysql的关联主要包括inner join,left join,right join三种,下面分别加以介绍,并举例说明。

? ? 顾名思义,inner join集合了两个表的信息,只有都包含的才关联在一起。

? ? left join以第一个表为准,后一个表信息不完整记为NULL

? ? right join以第二个表为准,前一个表信息不完整记为NULL

? ? 此外要注意,一个关联条件对应到表中可能对应好几条信息,这样需要将这些信息都关联出来。

? ? 举例说明:

? ? 建立如下三张表article,us,type:

? ??

?

?

?
?下面只详细介绍右关联,其他的关联只给出语句以及最后的结果。

首先做前两张表的右关联

select article.aid,article.title,us.usernam<em>本文来源[email protected]搞@^&代*@码2网</em>e from article right join us on article.uid=us.uid;

?由于是有关联,是以us表为准的。us.uid为1的在article中有两项结果,而us.uid为3的在article中没有,所以最后得到的结果如下:

?接着在这个结果上继续右关联type表

select article.aid,article.title,us.username,type.typename from article right join us on article.uid=us.uid right join type on article.tid=type.tid;

?此时将以type表为准,对于上面的关联结果,实际上aid1->tid:1,aid2->tid:2,aid3->tid:1,所以最后得到结果如下:

?对于inner join和left join,和上面类似,就介绍简单的两表关联吧。

?

?注意这里第一个表是:us

?


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:mysql的多表联系关系

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址