子查询
子查询概念
子查询:sub query
子查询是一种常用计算机语言SELECT-SQL语言中嵌套查询下层的程序模块,当一个查询是另外一个查询的条件时,称之为子查询。可以理解为:在一条select语句中,嵌入了另外一条select语句,那么被嵌入的select语句称之为子查询语句。
备注:html5中<sub> 标签可定义下标文本。<sup> 可定义上标文本。
主查询概念
主查询:主要的查询对象。即第一条select语句:确定用户所有获取的数据目标(数据源),以及要具体得到的字段信息。
子查询和主查询的关系:
1、子查询是嵌入到主查询中的;
2、子查询是辅助主查询的(要么作为条件,要么作为数据源);
3、子查询其实可以独立存在(是一条完整的select语句)
子查询分类
1、按功能分:
标量子查询:子查询返回结果是一个数据(一行一列)
列子查询:返回结果是一个数据(一列多行)
行子查询:返回结果是一个数据(一行多列)
表子查询:返回结果是一个数据(多行多列)
exists子查询:返回结果是1或者0(类似布尔操作。mysql中没有布尔类型)
2、按位置分:
where子查询:子查询出现的位置在where条件中
from子查询:子查询出现的位置在from数据源中(其实就是做数据源)
标量子查询
概念
标量子查询:子查询的返回值必须只有一行记录,而且只能有一个列。