mysql join链接

链接类型

  分为三种:交叉链接、内链接、外链接。spa

交叉链接 cross join

  没有where子句的交叉链接将产生链接表的笛卡尔积,等同于inner join。select

        select * from R cross join S;遍历

内链接

  内链接分为三种:天然链接、等值链接、非等值链接。查询

  天然链接 natural join:在链接条件中使用等于=运算符比较被链接列的列值,但删除链接表中重复列。join

  select * from R natural join S;oss

        等值链接 :使用等于=比较链接列的列值,在查询结果中列出接连表中的全部列,包括其中的重复列。运算符

  select * from R join S where R.C = S.C;

  或

  select * from R inner join S where R.C = S.C;

    

        非等值链接 :在链接条件中,能够使用其余比较运算符,比较被链接列的列值,如:<、>、!=等。

外链接

外链接分为三类:全外链接、左外链接、右外链接。

  左外链接 left join / left outer join

  select * from R left join S on R.C = S.C;

        左外链接要遍历左表的全部记录,右表没有的用null表示。

  右外链接 right join / right outer join

  select * from R right join S on R.C = S.C;

       右外链接要遍历右表全部的记录,左表没有的用null表示。

  全外链接 full join / full outer join

  select * from R full join S on R.C = S.C;

        全链接产生的全部记录(双方匹配记录)在表R和表S。若是没有匹配,则对面将包含null。

相关文章
相关标签/搜索