(一) 关键知识点
1.1 消化阶梯
![18a3c4225ae4b275a0ec8db06d83f450.png](https://i-blog.csdnimg.cn/blog_migrate/7dbccad49322330a38963f52d5582288.jpeg)
1.2 功能点
1.2.1 视图
- 案例
![d4a933247e4fc8e940993b225710481f.png](https://i-blog.csdnimg.cn/blog_migrate/83b727cfdbbdbbd31c5f7b933909510a.jpeg)
![42587b1a5a095cd2bc00eba3fd0309df.png](https://i-blog.csdnimg.cn/blog_migrate/17d829f081cd6ab410144830946bbc54.jpeg)
![78a3b38c5050c4ef06cb1594a6fbb07a.png](https://i-blog.csdnimg.cn/blog_migrate/9cc65bd4608e84061578c57a15c97786.jpeg)
![531c98ba568c7d6b05b65e2a1c9133b3.png](https://i-blog.csdnimg.cn/blog_migrate/40fb2be6c039ddb8436a95857896dae2.jpeg)
- 注意事项
(1) 视图中存放的是sql语句,非表的实际数据,节省存储空间,动态更新较便捷;
(2) from子句中,视图名代替表名,运行时动态创建出一张临时表;
(3) 频繁/复杂的sql语句,保存成视图,可反复使用,节省存储空间;
(4) 避免:级联多级视图(降低效率),视图中插入数据(报错);
1.2.2 子查询
1.2.2.1 概况
- 常规子查询(临时表)
![d085074d9237a12ef69324a0ddf4a004.png](https://i-blog.csdnimg.cn/blog_migrate/167d0214070e3b413552c1cfeee0f85b.jpeg)
- 特殊子查询 (in,any,some,all)
![8dbcf7fbb7876ee055924ecacea7a024.png](https://i-blog.csdnimg.cn/blog_migrate/e171cd4c06058de4373e6bf3d1c39936.jpeg)
![859dab597a099202766f2576f2f5a99b.png](https://i-blog.csdnimg.cn/blog_migrate/984b6cbdfdb749b8a47ec8ce916bc600.jpeg)
![5cbf11b003d35248d48a654571e51331.png](https://i-blog.csdnimg.cn/blog_migrate/8ad7ceb44a75ecf2bece6415122846ac.jpeg)
- 注意事项
(1) 确保逻辑运算的优先级,可以使用括号;
(2) 尽量避免子查询的层层嵌套,拖累效率;
(3) 子查询,可以嵌入select/from/where子句(目标对象:常量,字段,字段的运算);
(4) 注意子查询的功效,条件判断的值域一般不需要内外表字段的关联,组内判断需要关联子查询;
(5) 必须提前过滤异常值,直接用in,all,any比较会导致整体结果异常;
特殊处理:Null,>0则过滤掉异常值;字母顺序,name<=all(name)表示升序第一个字符,
(6)分组子句,在没有汇总函数时,未起作用,虽然不报语法错误;
(7)子查询的逻辑核心,是拆分问题,逐步回答(select within select);
1.2.2.2 标量子查询 (完成数值间比较)
- 案例
![d8c50ae03b34c0c59a07ddd15db00c69.png](https://i-blog.csdnimg.cn/blog_migrate/003029f2ab546173ac5701091ed69870.jpeg)
![746e7169a6725e0156916ad3bf78364b.png](https://i-blog.csdnimg.cn/blog_migrate/1d7e1b61f243e69d0748d6c783ac30ed.jpeg)
- 注意事项
(1) 有且仅能返回一行一列的结果,即单个值
1.2.2.2 关联子查询 (多表字段关联,单表数值比较)
- 案例
![9e879cfa7220949eda2b6b96cb3dff86.png](https://i-blog.csdnimg.cn/blog_migrate/cc67ce8a5968e6f8473dd52e074a13c6.jpeg)
![8f845532dd46c41b03a8269ee4209426.png](https://i-blog.csdnimg.cn/blog_migrate/538f77ef98829b6882f27f8a3ebb5c7b.jpeg)
- 注意事项
(1) 对单表中数据进行比较时,使用单表关联自身的关联子查询 ;
(2) 注意表的有效范围,正确访问;
(3) 注意表的关联条件,大因素相同,才成立的过滤条件;
(4) 关联子查询,一定注意是否需要包含与自身相比,注意过滤,或者条件中的等于号;
1.3 功能函数
- 汇总函数
![fc66b85cc342adbe0d22be1d8387ef37.png](https://i-blog.csdnimg.cn/blog_migrate/4e9264be1b5855619d40cb845979d0c6.jpeg)
- 字符串函数
![3f79faa4fbe5b94d1f68aa1588900f7d.png](https://i-blog.csdnimg.cn/blog_migrate/f48aeed5828a69c1236cc9118b97af6f.jpeg)
- 日期函数
![6d50770543806b8e0daf8abd613a8357.png](https://i-blog.csdnimg.cn/blog_migrate/0f56b5386bd0fe2c30d8cce041573d8b.jpeg)
- 算术函数
![51cc97aa5cd8cc66d8ab71aa10f0e221.png](https://i-blog.csdnimg.cn/blog_migrate/b9915eef98a670edd7f1887854e60c41.jpeg)
(二)SQL ZOO实操
![42c369ecff4a8943c99ba0872927d650.png](https://i-blog.csdnimg.cn/blog_migrate/494a45089e19e486ce891718081b903f.jpeg)
![844eef097490b9db90d2583af4301e5e.png](https://i-blog.csdnimg.cn/blog_migrate/52508b9fe0b8f605313b551de0914847.jpeg)
![c4105004a6b48bd02d3951877babe949.png](https://i-blog.csdnimg.cn/blog_migrate/da4426958bf33db764372b91971f5c4e.jpeg)
![2d4a17a044369bdfd605b3ac8c332567.png](https://i-blog.csdnimg.cn/blog_migrate/07ea057e2a347ab25e11dea0f288b3a7.jpeg)
![fe8082a7051f5cac7e416fa136b901d8.png](https://i-blog.csdnimg.cn/blog_migrate/4e3c5ccce2b636eb69ef939663900a15.jpeg)
![2b081e9f4bf930cfc00f4c91f860eddb.png](https://i-blog.csdnimg.cn/blog_migrate/21311d8e040852fde5ea0f51a9b4fe17.jpeg)
![996ac5ba9bcd7a677b63b48ad665e548.png](https://i-blog.csdnimg.cn/blog_migrate/b2d9802b64215579e6cc24d44e42acbf.jpeg)
![48bc12afbbeadfb9aa198c6d8d213727.png](https://i-blog.csdnimg.cn/blog_migrate/db4934659dcef9c8180831953e5981d3.jpeg)
![4dd936e7bc3529bdd3019b4b34b6343a.png](https://i-blog.csdnimg.cn/blog_migrate/ad8c5982cc201c3517e28b132ece66ee.jpeg)
![4cb81bf54cbce2c033e147dab9ea8926.png](https://i-blog.csdnimg.cn/blog_migrate/900b566e6e67c81b9e3fff8409a96e57.jpeg)
![b49d27c156645aabe45df9dc6537dbc7.png](https://i-blog.csdnimg.cn/blog_migrate/93ca44848bec2abaf208b0c75526eccb.jpeg)
![afed76339894a919331661ef8d934cc6.png](https://i-blog.csdnimg.cn/blog_migrate/c696b265565548c12ba127786c1e089f.jpeg)