zoukankan      html  css  js  c++  java
  • mysql的left join、 right join和inner join

    1.定义

    left join:左联接,返回包括左表中的所有记录和右表中符合条件的记录。

    right join:右联接,返回包括右表中的所有记录和左表中符合条件的记录。

    inner join:等值联接,返回两个表中符合条件的记录。

    2. 表的定义

    表A记录如下:
    aID     aNum             aheight
    1     a20050111           170
    2     a20050112           180
    3     a20050113           172
    4     a20050114           174
    5     a20050115           175

    表B记录如下:
    bID     bName              bheight
    1     2006032401           170
    2     2006032402           170
    3     2006032403           164
    4     2006032404           165
    8     2006032408           166

    3.查询例子

    3.1 left join 

    select aID , aNum, BID, bName from A left join B  on A.aID = B.bID

    结果如下:
    aID     aNum     bID     bName
    1     a20050111    1     2006032401
    2     a20050112    2     2006032402
    3     a20050113    3     2006032403
    4     a20050114    4     2006032404
    5     a20050115    NULL     NULL

    select aID, aheight, bID, bheight from A left join B  on A.aheight = B.bheight;

    结果如下:

    aID     aheight    bID    bheight

    1          170         1         170

    1          170         2         170

    left join是以A表的记录为基础的,A可以看成左表,B可以看成右表,left join是以左表为准的.
    换句话说,左表(A)的记录将会全部表示出来,而右表(B)只会显示符合搜索条件的记录(例子中为: A.aID = B.bID).
    B表记录不足的地方均为NULL.

    3.1 right join

    right join和left join 刚好相反, 以右边的表为准, 右表将会全部显示出来,而左表只会显示符合条件的记录,不足的地方均为NULL。

    3.2 inner join

    inner join为等值联接,

    select aID , aNum, BID, bName from A inner join B  on A.aID = B.bID

    结果为:

    aID     aNum     bID     bName
    1     a20050111    1     2006032401
    2     a20050112    2     2006032402
    3     a20050113    3     2006032403
    4     a20050114    4     2006032404

  • 相关阅读:
    Linux中的文件夹的增删改查命令和文件的增删改查命令
    xshell开源软件
    2020090808redis之linux的gcc的升级安装(八)
    2020090807redis之windows安装(七)
    2020090806redis之理解(六)
    2020090805redis之nosql的四大分类(五)
    每个牛逼的人都有一段苦逼的岁月,但是只要像SB一样坚持,终将牛逼
    2020090804redis之数据库的搭建(四)
    2020090803redis之大数据3V+3高(三)
    2020090802redis之非关系 数据库nosql(二)
  • 原文地址:https://www.cnblogs.com/Hxinguan/p/6341681.html
Copyright © 2011-2022 走看看