-
子查询作用:
- 替代多表查询 (因为多表查询会产生大量笛卡尔积,浪费空间,条件语句只是让显示正常,并不会消除笛卡尔积)
- 子查询可以用在任意位置,但是要符合 所在位置的规则, 比如子查询用在select后面,select后面是一个查询值,即一行一列,所以select后面的子查询只能是一行一列,即 “标量子查询”
-
子查询相关术语:
- 标量子查询(一行一列) 常用
- 列子查询(一列多行 也叫 多行子查询) 常用
- 行子查询(一行多列)
- 表子查询(多行多列)
-
子查询语法特点:
- 要在括号里面
- 子查询的执行优先于主查询。因为主查询的条件是子查询的结果
-
子查询应用
应用1 子查询在WHERE后面的标量子查询
谁的奖金比ZZ高?
setp1:查询ZZ奖金: SELECT 奖金 FROM 员工奖金表
WHERE 名字=ZZ
setp2:谁的奖金>setp1结果: SELECT 奖金 FROM 员工奖金表
WHERE 奖金> (