主页 > 电脑硬件  > 

MySQL零基础教程14—子查询

MySQL零基础教程14—子查询

子查询比较简单,我们还是通过案例引入。

有时候我们查询的时候,需要用到的不止一个表的数据,比如下面的场景:

查询名字叫李晓红同学的班主任姓名

我们提供三个表的基础信息如下:

从三张表的结构,我们不难看出,想要根据student_name找到teacher_name,是这样一条链路:

很显然,我们不能只查询一个表就得到想要的结果,我们需要多写一条查询,将其结果作为另外一条查询的条件,这就是一种嵌套的结构,而在mysql中,是允许这种sql构建方式的,所以我们最终的sql就是:

SELECT teacher_name FROM teachers WHERE teacher_id = ( SELECT head_teacher_id FROM classes WHERE class_id = ( SELECT class_id FROM students WHERE student_name = '李晓红' ) );

其实子查询就是完整的sql语句,查询结果可以用于:

用查询的特定值作为过滤条件作为过滤范围作为计算字段

用法非常多,就看自己的想象力了

标签:

MySQL零基础教程14—子查询由讯客互联电脑硬件栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“MySQL零基础教程14—子查询