千家信息网

mysql中join和on怎么用

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,小编给大家分享一下mysql中join和on怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!用法:1、join用于根据
千家信息网最后更新 2026年11月01日mysql中join和on怎么用

小编给大家分享一下mysql中join和on怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

用法: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 -u root -p                                 # 登录数据库,输入密码CREATE DATABASE new;             # 创建数据库newuse new;                                            # 使用这个数据库CREATE TABLE stu(id int primary key,name char(10),classid int)default charset = utf8mb4;             # 创建表stuINSERT INTO stu (id,name,classid)VALUES(1,'A',1),(2,'B',1),(3,"C",2);                        # 插入数据SELET * FROM stu;

CREATE TABLE class(id int primary key,name char(10),teacher char(10))default charset = utf8mb4;          # 创建表classINSERT INTO class (id,name,teacher)VALUES(1,'实验班',"小红"),(2,'普通班',"小蓝");                      #  插入数据SELECT * FROM class;

SELECT * FROM stu join class;                  #   用join连接两个表

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


以上是"mysql中join和on怎么用"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

数据 两个 条件 数据库 一行 篇文章 面的 之间 作用 内容 语法 不同 普通 相同 以此类推 不怎么 不断 例子 只有 多个 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 上海喔噻互联网科技有限公司 湖南永感互联网科技有限公司 智慧科技互联网 菲比寻常互联网科技 互联网科技大会案例 成都互联网科技公司100强 字节跳动和互联网科技 常德市电业局互联网科技部 顶级互联网科技成果有哪些 中化能源互联网科技招聘 互联网对科技的发展 智腾互联网科技有限公司 和信科技工业互联网 世界互联网领先科技成果获奖 深圳无忧互联网科技 启辰互联网科技 美国互联网科技公司 银川新华互联网科技学校原画 互联网科技的前景 银川新华互联网科技学校招聘 上海睿民互联网科技有限公司 百单互联网科技有限公司 西安互联网科技公司 滨湖区互联网智能科技产品供应 无锡溥仪互联网科技有限公司 互联网科技创新服务 迪庆互联网科技招生 神州科技互联网有限公司 北京军民互联网科技公司 长沙易易互联网科技有限公司
0