文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>有关SQL的外连接和内连接

有关SQL的外连接和内连接

时间:2010-11-30  来源:AndroidW

 

1、外连接:包括左向外联接、右向外联接或完整外部联接

  1.1 左连接:left join 或 left outer join

    例:select * from ta left join tb on ta.id=tb.id

      结果为:

        id name         id password

        1  ZhangSan  1   111

        2  LiSi            2   222

        3  WangWu   null  null

      返回结果包含表ta的所有子句,根据指定条件返回tb相应的字段,不符合的显示null。

  1.2 右连接:right join 或 right outer join

    例:select * from ta right join tb on ta.id=tb.id

      结果为:

        id  name         id password

        1   ZhangSan  1   111

        2    LiSi           2   222

        null null           4   444

      返回结果包含表tb的所有子句,根据指定条件返回ta相应的字段,不符合的显示null。

  1.3 完整外部联接: full join 或 full outer join

    例:select * from table1 full join table2 on table1.id=table2.id

      结果为:

        id name         id password

        1  ZhangSan  1   111

        2  LiSi            2   222

        3  WangWu   null  null

        null null           4   444

2、内连接:内联接是用比较运算符比较要联接列的值的联接。 join 或 inner join

  例:select * from ta join tb on ta.id=tb.id

    结果为:

        id name         id password

        1  ZhangSan  1   111

        2  LiSi            2   222

    只返回符合条件的结果。等价于语句 select a.*,b.* from ta a,tb b where a.id=b.id
3、交叉连接:没有 WHERE子句的交叉联接将产生联接所涉及的表的笛卡尔积。cross join (不带条件where...)

  例:select * from ta cross join tb

    结果为:

        id name         id password

        1  ZhangSan  1   111

        2  LiSi            1   111

        3  WangWu    1   111

        1  ZhangSan   2   222

        2  LiSi            2   222

                      3  WangWu    2   222

                      1  ZhangSan   4   444

        2  LiSi            4   444

                      3  WangWu   4   444

    执行结果等价于select * from ta, tb

相关阅读 更多 +
排行榜 更多 +
别惹神枪手安卓版

别惹神枪手安卓版

冒险解谜 下载
坦克战争世界

坦克战争世界

模拟经营 下载
丛林反击战

丛林反击战

飞行射击 下载