zoukankan      html  css  js  c++  java
  • [转]SQL:JOIN用法

    JOIN连接组合两个表中的字段记录,包括三种: 
    INNER JOIN运算式:连接组合两个表中的字段记录。

    LEFT JOIN运算式:连接组合两个表中的字段记录,并将包含了LEFT JOIN左边表中的全部记录。

    RIGHT JOIN运算式:连接组合两个表中的字段记录,并将包含了RIGHT JOIN右边表中的全部记录。


    INNER JOIN设定两个表相关连的运算式,以连接组合两个表中的字段记录。

    INNER JOIN语法如下:

    FROM 表1 INNER JOIN 表2 ON 表1.字段1 比较运算子 表2.字段2

    两个表连接的字段,譬如 [表1.字段1=表2.字段2],必须具有相同的字段类型,但是字段名称不需要相同。

    例如,自动编号字段类型可以连接Long 的字段类型,但是单精整数字段类型不能连接双精整数的字段类型。

    比较运算子可为=、<、>、<=、>=、或<>。

    JOIN连接的字段,不可以包含MEMO字段类型或OLE对象类型,否则会发生错误。

    在一个JOIN表达式中,可以连结多个ON子句:

    SELECT fields
    FROM 表1 INNER JOIN 表2
    ON 表1.字段1 比较运算子 表2.字段1 AND
    ON 表1.字段2 比较运算子 表2.字段2) OR
    ON 表1.字段3 比较运算子 表2.字段3)

    JOIN表达式中,可以为巢状式:

    SELECT fields
    FROM 表1 INNER JOIN
    (表2 INNER JOIN [( ]表3
    [INNER JOIN [( ] 表x [INNER JOIN ...)]
    ON 表3.字段3 比较运算子 表x.字段x)]
    ON 表2.字段2 比较运算子 表3.字段3)
    ON 表1.字段1 比较运算子 表2.字段2

    在一个INNER JOIN中,可以包括巢状式的LEFT JOIN或RIGHT JOIN,但是在一个LEFT JOIN或RIGHT JOIN中不能包括巢状式的INNER JOIN。 
  • 相关阅读:
    mysql #与$的区别
    linux连接mysql
    19年春第十三周学习
    第二阶段冲刺-02
    第二阶段冲刺-01
    19年春第十二周学习
    第一阶段SCRUM冲刺-10
    第一阶段SCRUM冲刺-09
    第一阶段SCRUM冲刺-08
    19年春第十一周学习
  • 原文地址:https://www.cnblogs.com/mr-totoro/p/5785662.html
Copyright © 2011-2022 走看看