您现在的位置是:首页 > 运维桌面运维

MYSQL多表查询方法诠释

阿龙2022-11-14【桌面运维】人已围观

三个方法与三个方法的不同之处
1,inner join 表名  on  相似条件  (等值连接)  只返回两个表中联结字段相等的行
2,left  join 表名  on  相似条件 (左联接)   返回包括左表中的所有记录和右表中联结字段相等的记录 
3,right  join 表名  on  相似条件 (右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录

例:
表A记录如下:
aID     aNum
1     a20050111
2     a20050112
3     a20050113
4     a20050114
5     a20050115

表B记录如下:
bID     bName
1     2006032401
2     2006032402
3     2006032403
4     2006032404
8     2006032408
sql语句如下: 
select * from A
left join B 
on A.aID = B.bID

结果如下:
aID     aNum     bID     bName
1     a20050111    1     2006032401
2     a20050112    2     2006032402
3     a20050113    3     2006032403
4     a20050114    4     2006032404
5     a20050115    NULL     NULL


sql语句如下: 
select * from A
right join B 
on A.aID = B.bID

结果如下:
aID     aNum     bID     bName
1     a20050111    1     2006032401
2     a20050112    2     2006032402
3     a20050113    3     2006032403
4     a20050114    4     2006032404
NULL     NULL     8     2006032408


sql语句如下: 
select * from A
innerjoin B 
on A.aID = B.bID

结果如下:
aID     aNum     bID     bName
1     a20050111    1     2006032401
2     a20050112    2     2006032402
3     a20050113    3     2006032403
4     a20050114    4     2006032404
左连以左表为主,右连以右表为主,等值连以相同为主,以上三个查询案列很直观。

Tags:左连接   右连接   等值连接

很赞哦! ()

上一篇:VM中装LINUX

下一篇:MYSQL常用函数