mysql 之: inner join , left join 和 right join 的区别

     通俗的讲:  
  A   
left     join    B      |:连接的记录数与A表的记录数同(显示A表的所有记录 ,B表不存在记录则为NULL)

  A   right   join   B   |:连接的记录数与B表的记录数同(显示B表的所有记录 ,A表不存在记录则为NULL)   

      A   left   join   B      |: 等价B   right   join   A 

     A   inner   join  B    |: 两个表相匹配的记录出现在查询结果列表中


提示: select   *   from   a,b   where   a.Field_K=b.Field_K      |联表查询 :这个语法是内连接的另外一种写法,其执行结果与inner   join   一样  ;

提示 :left   join是left   outer   join的简写 ,查询结果一样;

   
表结构: ===========================================================================
  
table    A:  
     Field_K,   Field_A  
   1                        a  
  
3                        b  
  
4                        c  
   
  
table    B:  
  Field_K,   Field_B  
  
1                        x  
  
2                        y  

  4                       z 


操作实例: =============================================================================
  
select    a.Field_K,   a.Field_A,   b.Field_K,   b.Field_B  
  
from    a    left     join    b    on    a.Field_K = b.Field_K  
   
  Field_K         Field_A         Field_K         Field_B          
  
-- --------   ----------   ----------   ----------    
   1                      a                      1                      x                    
  
3                      b                      NULL                 NULL   

  4                     c                     4                     z                   


   ---------------------------------------------------------------------------------------------------------------------------------------
  
select    a.Field_K,   a.Field_A,   b.Field_K,   b.Field_B  
  
from    a    right     join    b    on    a.Field_K = b.Field_K  
   
  Field_K         Field_A         Field_K         Field_B          
  
-- --------   ----------   ----------   ----------    
   1                      a                      1                      x                    
  
NULL                 NULL                 2                     y                    

  4                     c                     4                     z     

      ---------------------------------------------------------------------------------------------------------------------------------------

     select   a.Field_K,   a.Field_A,   b.Field_K,   b.Field_B  
  
from   a   inner   join   b   on   a.Field_K=b.Field_K 


  Field_K         Field_A         Field_K         Field_B          
  
----------   ----------   ----------   ----------    
  1                     a                     1                     x                   

  4                     c                     4                     z     




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值