当前位置: 首页 > MySQL数据库

MySQL连接查询的方法是什么

时间:2026-01-28 12:53:29
再次认识关系表

我们之前一直使用student_infostudent_score两个表来分别存储学生的基本信息和学生的成绩信息,其实合并成一张表也不是不可以,假设将两张表合并后的新表名称为student_merge,那它应该长这样:

student_merge表

numbernamesexid_numberdepartmentmajorenrollment_timesubjectscore
20180101杜子腾158177199901044792计算机学院计算机科学与工程2018-09-01母猪的产后护理78
20180101杜子腾158177199901044792计算机学院计算机科学与工程2018-09-01论萨达姆的战争准备88
20180102杜琦燕151008199801178529计算机学院计算机科学与工程2018-09-01母猪的产后护理100
20180102杜琦燕151008199801178529计算机学院计算机科学与工程2018-09-01论萨达姆的战争准备98
20180103范统17156319980116959X计算机学院软件工程2018-09-01母猪的产后护理59
20180103范统17156319980116959X计算机学院软件工程2018-09-01论萨达姆的战争准备61
20180104史珍香141992199701078600计算机学院软件工程2018-09-01母猪的产后护理55
20180104史珍香141992199701078600计算机学院软件工程2018-09-01论萨达姆的战争准备46
20180105范剑181048200008156368航天学院飞行器设计2018-09-01NULLNULL
20180106朱逸群197995199801078445航天学院电子信息2018-09-01NULLNULL

有了这个合并后的表,我们就可以在一个查询语句中既查询到学生的基本信息,也查询到学生的成绩信息,比如这个查询语句:

SELECT number, name, major, subject, score FROM student_merge;

其中查询列表处的namemajor属于学生的基本信息,subjectscore属于学生的成绩信息,而number既属于成绩信息也属于基本信息,我们可以在一个对student_merge表的查询语句中很轻松的把这些信息都查询出来。但是别忘了一个学生可能会有很多门学科的成绩信息,也就是说每当我们想为一个学生增加一门学科的成绩信息时,我们必须把他的基本信息再抄一遍,这种同一个学生的基本信息被冗余存储会带来下边的问题:

  • 英特尔与 Vertiv 合作开发液冷 AI 处理器
  • 英特尔第五代 Xeon CPU 来了:详细信息和行业反应
  • 由于云计算放缓引发扩张担忧,甲骨文股价暴跌
  • Web开发状况报告详细介绍可组合架构的优点
  • 如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳
  • 美光在数据中心需求增长后给出了强有力的预测
  • 2027服务器市场价值将接近1960亿美元
  • 生成式人工智能的下一步是什么?
  • 分享在外部存储上安装Ubuntu的5种方法技巧
  • 全球数据中心发展的关键考虑因素
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器

    英特尔第五代 Xeon CPU 来了:详细信息和行业反应

    由于云计算放缓引发扩张担忧,甲骨文股价暴跌

    Web开发状况报告详细介绍可组合架构的优点

    如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳

    美光在数据中心需求增长后给出了强有力的预测

    2027服务器市场价值将接近1960亿美元

    生成式人工智能的下一步是什么?

    分享在外部存储上安装Ubuntu的5种方法技巧

    全球数据中心发展的关键考虑因素