zoukankan      html  css  js  c++  java
  • 2020/6/20 mysql表连接和子查询

    一、表连接

      连接语法的基本形式:

        from 表1 [连接方式] join 表2 [on 连接条件];

        连接的结果可以当作一个“表”来使用。常用有以下几种连接方式:1、交叉连接:

                                        实际上,交叉连接是将两个表不设定任何条件的连接结果。

                                        交叉连接通常也被叫做“笛卡尔积”——数学上可能比较多。

                                        语法:

                                          from  表1  [cross]  join  表2  ;      //可见交叉连接只是没有on条件而已。

                                          cross这个词也可以省略,还可以使用inner这个词代替

                                     2、内连接:

                                        语法:

                                          from  表1  [inner]  join  表2  on  表1.字段1=表2.字段2;

                                        含义:找出(过滤)在交叉连接的结果表中的表1的字段1的值等于表2的字段2的值的那些行。

                                     3、左外连接:

                                        形式:    

                                          from  表1  left  [outer]  join   表2   on  连接条件。

                                        说明:

                                          1,这里,left是关键字。

                                          2,连接条件跟内连接一样。

                                          3,含义是:内连接的结果基础上,加上左边表中所有不符合连接条件的数据,相应放右边表的字段的位置就自动补为“null”值。

                                       4、右[外]连接:

                                        右连接跟左连接恰恰相反:

                                        形式:    

                                          from  表1  right  [outer]  join   表2   on  连接条件。

                                        说明:

                                          1,这里,right是关键字。

                                          2,连接条件跟内连接一样。

                                          3,含义是:在内连接的结果基础上,加上右边表中所有不符合连接条件的数据,相应本应放左边表的字段的位置就自动补为“null”值。

    二、子查询

      什么叫子查询:子查询就是把一个查询的结果当作另一个查询的条件。

      使用in子查询

        in的基本语法形式为:

          where  操作数  in (值1,值2, ....)

          则in子查询就是:

          where  操作数  in ( 列子查询 );

      含义:

        表示该操作数(字段值) 等于 该子查询的其中任意一个只,就算满足条件。

  • 相关阅读:
    ubuntu18.04 复制或剪切某文件夹下的前x个文件到另一个文件夹下
    VOC2012数据集提取自己需要的类的图片和对应的xml标签
    python面试题
    vi命令使用
    缓冲(Buffer)和缓存(Cache)区别和联系
    cpu相关概念
    pycharm
    jmeter分布式部署
    LeetCode#67 Add Binary
    LeetCode#70 Climbing Stairs
  • 原文地址:https://www.cnblogs.com/luzhijin/p/13169385.html
Copyright © 2011-2022 走看看