MySQL   发布时间:2022-05-15  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了mysql中join和on的用法是什么大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

mysql中join和on的用法是什么

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

@H_255_11@mysqL中join和on的用法是什么

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

join的用法:连接

举例先看看,就懂了:

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

mysql中join和on的用法是什么


mysql中join和on的用法是什么


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

mysql中join和on的用法是什么


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

  • 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 后,表变为:

mysql中join和on的用法是什么


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

在数据库中验证:

@H_856_106@mysqL -u root -p # 登录数据库,输入密码 CREATE DATABASE new; # 创建数据库new use new; # 使用这个数据库 create table stu(id int priMary key,name char(10),classid int)default charset = utf8mb4; # 创建表stu INSERT INTO stu (id,name,classid)VALUES(1,'A',1),(2,'B',1),(3,"C",2); # 插入数据 @R_801_10288@T * FROM stu;

mysql中join和on的用法是什么

create table class(id int priMary key,name char(10),teacher char(10))default charset = utf8mb4;          # 创建表class
INSERT INTO class (id,name,teacher)VALUES(1,'实验班',"小红"),(2,'普通班',"小蓝");                      #  插入数据
@R_801_10288@CT * FROM class;

mysql中join和on的用法是什么

@R_801_10288@CT * FROM stu join class;                  #   用join连接两个表

mysql中join和on的用法是什么

@R_801_10288@CT * FROM stu join class ON classid = class.id;               # 用on来添加条件

mysql中join和on的用法是什么


推荐学习:mysql视频教程

大佬总结

以上是大佬教程为你收集整理的mysql中join和on的用法是什么全部内容,希望文章能够帮你解决mysql中join和on的用法是什么所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: