首頁 >資料庫 >mysql教程 >mysql的多表关联_MySQL

mysql的多表关联_MySQL

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB原創
2016-06-01 13:30:041435瀏覽

bitsCN.com

mysql的多表关联
 

    数据库中经常要用到多个表的关联。mysql的关联主要包括inner join,left join,right join三种,下面分别加以介绍,并举例说明。
    顾名思义,inner join集合了两个表的信息,只有都包含的才关联在一起。
    left join以第一个表为准,后一个表信息不完整记为NULL
    right join以第二个表为准,前一个表信息不完整记为NULL
    此外要注意,一个关联条件对应到表中可能对应好几条信息,这样需要将这些信息都关联出来。
    举例说明:
    建立如下三张表article,us,type:
    
mysql的多表关联_MySQL

mysql的多表关联_MySQL

mysql的多表关联_MySQL
 
 下面只详细介绍右关联,其他的关联只给出语句以及最后的结果。
首先做前两张表的右关联

Java代码 select article.aid,article.title,us.username from article right join us on article.uid=us.uid;  

 

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

mysql的多表关联_MySQL
 接着在这个结果上继续右关联type表

Java代码 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,所以最后得到结果如下:

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

mysql的多表关联_MySQL


mysql的多表关联_MySQL
 注意这里第一个表是:us

bitsCN.com
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn