MySQL教程视频_跨表查询_多表查询语法介绍

MySQL教程视频_跨表查询_多表查询语法介绍

更新时间:2017年04月07日

  • 网盘提取码:a1ie
  • 适合对象:Java学员、Java爱好者、开发人员
  • qq号:2158476996

下载介绍

更多>>
MySQL教程视频_跨表查询_多表查询语法介绍

现在我们要查询学生表,教师表,院系表的所有信息:

   select * from student,teacher,part //查询这三个表中的所有信息


  我们现在要查询某学生的教师是的名字:

   select teaname from student,teacher where (student.id ='') and (teacher.id = student.tid)

//这里有两个约束条件,一个是约束学生的id号,一个是约束学生表和教师表的数据要相对应,也就是,这样查询的结果,就是该学生tid所对应教师表中id号的teaname字段的数据,也就是这位学生的教师名字了


  现在有一个问题,我想问这个学生所在院系是什么?这个问题就应该迎刃而解了吧。


  当然这只是简单的多表查询,其实在真正多表查询时,是用的以下方法:

   这里讲一个join方法

   该语句是实现多对对查询或一对一查询的方法,当我们在用简单多表查询的时候,它的匹配是无逻辑的,也就是没有具体的约束条件,它不会按照逻辑关系来约束。有可能这个学生会和一个无关第教师联系起来,或者和一个无关的院系联系起来。

   我们用一个简单的join方法查询:

   select teacher.teaname from student join teacher on(student.tid = teacher.id)where (student.id='1')

 //查询id号为1的学生的教师的名字

  这就是join语句的语法,它是个嵌套语句,也就是把一个表嵌套在另一个表中,一般都是自下而上的嵌套,如上例,就是学生表去加入教师表的集合。也就是从表加入主表。


  这种join有两个参数,我们上例用的是缺省参数--innor,当我们直接用join时,就默认是这个参数,还有一个left,这两个参数在用时有很大的区别。


Java相关视频锦集

返回顶部