SQL 学习笔记:子查询(子查询)
一、子查询 语法
SELECT 列 FROM 表
WHERE 列 运算符 (SELECT 列 FROM 另一表 ...);二、参数说明
| 项目 | 说明 |
|---|---|
标量子查询 | 返回单行单列,可用于 SELECT/WHERE/值处 |
行子查询 | 返回单行多列,用 = 或 IN 比较 |
表子查询 | 返回多行多列,作临时表(FROM 子句) |
IN / EXISTS | IN 判集合包含;EXISTS 判存在性,常更高效 |
三、注意事项
- 子查询先执行内层、再用于外层;可嵌套多层
- EXISTS 只要找到即返回,不关心具体值,大表关联常比 IN 快
- Oracle 与 MySQL 均支持上述子查询形式
四、经典案例
案例1:IN 子查询
案例2:标量子查询
案例3:EXISTS 判存在
五、小结
子查询是数据库操作中的基础而关键的用法,建议结合文中的示例表在 Oracle 与 MySQL 中分别动手验证,注意两者在自增、分页、正则等处的语法差异,做到融会贯通。
评论(0)
请登录后发表评论。