• ADADADADAD

    mysql中join和on怎么用[ mysql数据库 ]

    mysql数据库 时间:2024-11-25 18:00:46

    作者:文/会员上传

    简介:

    用法:1、join用于根据两个或多个表中的列之间的关系,获取存在于不同表中的数据,具有连接的作用,语法为“表1 join 表2”;2、on用于给连接的两个表之间添加约束条件,语法为“表1 jo

    以下为本文的正文内容,内容仅供参考!本站为公益性网站,复制本文以及下载DOC文档全部免费。

    用法:1、join用于根据两个或多个表中的列之间的关系,获取存在于不同表中的数据,具有连接的作用,语法为“表1 join 表2”;2、on用于给连接的两个表之间添加约束条件,语法为“表1 join 表2 on 条件”。

    本教程操作环境:windows10系统、mysql8.0.22版本、Dell G3电脑。

    MySQL中join的用法:join具有连接的作用,即当两个或者两个以上的表有关系时,需要用join来连接这些相关的表,来处理或分析数据:

    join的用法:连接举例先看看,就懂了:

    例如: 有一个表叫做stu,一个表叫class,stu join class会生成一个新的表,


    我们执行: stu join class 后,新的表成为:

    通过上面的例子总结一下:

      join后的列名是两个表列名加起来的,可能会产生相同的列名,如id 和 name

      先用表stu中的一行数据和表class中的每一行数据不断的拼接,产生新的行

      再用表stu的第二行去和表class中的每一行数据拼接,以此类推

      表stu是3行,表class是2行,所以按照上面的规律会产成3*2 = 6行的新的表

      on的用法:添加约束

      一般我们join后的表,并不是我们想要的,这时,可以用 ON 来加一些条件:

      例如:stu join class on classid = class.id ,on后面就是我们加的条件,我们想要classid这一列数据和id这一列的数据相等的数据,这里注意一下,join后的表列名是有重复的,所以ON后面的条件语句中我们要加上原来的表名。例如这里:classid = class.id,由于id有两列,这里我们是要表class中的id,所是是class.id。

      所以: 执行:stu join class on classid = class.id 后,表变为:

      小提示:当只有join时,其后面的on可以用where替换;

      在数据库中验证:
      mysql-uroot-p#登录数据库,输入密码CREATEDATABASEnew;#创建数据库newusenew;#使用这个数据库CREATETABLEstu(idintprimarykey,namechar(10),classidint)defaultcharset=utf8mb4;#创建表stuINSERTINTOstu(id,name,classid)VALUES(1,'A',1),(2,'B',1),(3,"C",2);#插入数据SELET*FROMstu;
      CREATETABLEclass(idintprimarykey,namechar(10),teacherchar(10))defaultcharset=utf8mb4;#创建表classINSERTINTOclass(id,name,teacher)VALUES(1,'实验班',"小红"),(2,'普通班',"小蓝");#插入数据SELECT*FROMclass;
      SELECT*FROMstujoinclass;#用join连接两个表
      SELECT*FROMstujoinclassONclassid=class.id;#用on来添加条件

    mysql中join和on怎么用.docx

    将本文的Word文档下载到电脑

    推荐度:

    下载
    热门标签: mysqljoinon