登录
首页 >  数据库 >  MySQL

MySQL子查询

来源:SegmentFault

时间:2023-02-24 19:12:14 412浏览 收藏

IT行业相对于一般传统行业,发展更新速度更快,一旦停止了学习,很快就会被行业所淘汰。所以我们需要踏踏实实的不断学习,精进自己的技术,尤其是初学者。今天golang学习网给大家整理了《MySQL子查询》,聊聊MySQL,我们一起来看看吧!

​ 什么是子查询:当一个查询是另一个查询的子部分时,我们叫做子查询

​ 子查询的分类:

​ ①从对象间的关系分类

​ 相关子查询:select * from t1 where a1=(select b from t2 where b=a1);

​ 非相关子查询:select * from t1 where a1=(select b from t2 where b=2);

​ ②从查询结果上分类

​ 单列子查询

​ 如何显示与SMITH同一部门的所有员工?

​ select * from emp where deptno=(select deptno from emp where ename='smith') and ename !='smith';

​ 多列子查询

​ 如何查询与smith的部门和岗位完全相同的所有雇员

​ select * from emp where (deptno,job) = (select deptno,job from emp where ename='smith');

​ 多行子查询

​ 如何查询和10号部门的工作相同的雇员的名字、岗位、工资、部门号

​ select ename,job,sal,deptno from emp where job in(select job from emp where deptno=10);

​ 子查询可以出现在哪些位置?

​ 。查询列位置

​ 必须是单列子查询并且要取别名,否则报错

​ 。from子句位置

​ 必须非相关子查询,否则报错

​ 。where子句位置

​ 范围操作符>

​ in 可以是多列子查询

以上就是本文的全部内容了,是否有顺利帮助你解决问题?若是能给你带来学习上的帮助,请大家多多支持golang学习网!更多关于数据库的相关知识,也可关注golang学习网公众号。

声明:本文转载于:SegmentFault 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>