zoukankan      html  css  js  c++  java
  • mysql中的连接操作

    1.交叉连接

    交叉连接不带WHERE子句,会返回被连接的两个表的笛卡尔积,返回结果的行数等于两个表行数的乘积。



    2.内连接:

    内连接合并具有同一列的两个以上的表的行, 结果集中不包含一个表与另一个表不匹配的行。
    语法:
    SELECT <列名>
    FROM 表1  INNER  JOIN  表2
    ON 表1.列名  条件运算符  表2.列名
    [WHERE 条件]
    [ORDER BY  排序列]

    (1)等值连接
    等值连接必须要有等值的条件,当条件不同时连接的结果也不相同,两个关系可以没有相同的属性列(列名可不同)

    L表:


    Y表:


    where条件为:

    L.A=Y.B:


    L.B=Y.B:


    (2)自然连接:

    自然连接(Natural join)是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉。而等值连接并不去掉重复的属性列。

    (3)不等值连接:出等号之外的运算符

    3.外连接:
    外连接操作以指定表为连接主体,将主体表中不满足连接条件的元组一并输出。(连接条件里属性列可同可不同)
    (1)左外联结   (LEFT JOIN):
    左外连接使用LEFT JOIN连接两表,连接时左表为主表,左表中的每条记录必定出现在结果集中,而在右表中没有对应的记录,将以NULL值进行填充。
    语法:
    SELECT * FROM TABLE_A
    LEFT JOIN TABLE_B
    ON 连接条件
    [WHERE 条件]

    例:select * FROM L left JOIN Y on L.B=Y.C


    (2)右外联结   (RIGHT JOIN):
    右外连接与左外连接相似,不同的是右表为主表,右表中的每条记录必定出现在结果集中,而在左表中没有对应的记录,将以NULL值进行填充。
    语法:
    SELECT * FROM TABLE_A
    RIGHT JOIN TABLE_B
    ON 连接条件

    [WHERE 条件]

    例:select * FROM L RIGHT  JOIN Y on L.B=Y.C


    4.内外连接的区别:


  • 相关阅读:
    海量数据面试题整理
    JConsole操作手册
    JVM调优总结(十二)-参考资料
    JVM调优总结(十一)-反思
    JVM调优总结(十)-调优方法
    JVM调优总结(八)-典型配置举例2
    JVM调优总结(九)-新一代的垃圾回收算法
    JVM调优总结(七)-典型配置举例1
    JVM调优总结(五)-分代垃圾回收详述1
    JVM调优总结(六)-分代垃圾回收详述2
  • 原文地址:https://www.cnblogs.com/mlan/p/11060377.html
Copyright © 2011-2022 走看看