通过本文学习+练习,即可学会SQL复杂查询
目录
- 视图
- 子查询
- 标量子查询
- 关联子查询
- 各种函数
- 综合练习
1.视图
1.1什么是视图
![a1cfcecd264306f8e1822113cd028078.png](https://i-blog.csdnimg.cn/blog_migrate/e42e7ee48058e4e5b649467f1a2c9b92.jpeg)
1.2如何创建视图
输入SQL语句,创建视图
![cde73e19b8b505127c2885be757446af.png](https://i-blog.csdnimg.cn/blog_migrate/d6d6f50ea24dc37850a60e67c877fe7a.png)
得到创建的视图
![231994856979db16bd7504d3cf60168b.png](https://i-blog.csdnimg.cn/blog_migrate/1c1996d8be359f7a65362ddec1ebbcc1.png)
1.3创建视图的注意事项
- 避免在视图的基础上再创建视图,会降低SQL的运行效率
- 不能往视图里插入数据(原数据改变,视图内的数据会自动改变)
2.子查询
2.1什么是子查询
![18d4cae7798b2438d48b86ec2ad85c27.png](https://i-blog.csdnimg.cn/blog_migrate/fd8b703d5a6a5384aa389c22afb06e55.jpeg)
2.2如何使用子查询
![0882e3e37e3febda17da33484d685207.png](https://i-blog.csdnimg.cn/blog_migrate/5e6eabb402f5cdafb6a14ca8c410b5c6.jpeg)
例子1:每门课程最低成绩的学号
![dc43dff0949d27b5d7d1310aa930d06f.png](https://i-blog.csdnimg.cn/blog_migrate/4ca70432cbad13851fbc2df9e0c53158.png)
例子2:那些学生的成绩比课程0002的全部成绩里的任意一个高?
![0e68eb636412cc9572573c2341fda6a6.png](https://i-blog.csdnimg.cn/blog_migrate/12ee5abbf93dcb15267b1fef8927ca8d.png)
例子3:那些学生的成绩比课程0002的全部成绩里的都高
![154e540b3bea37aa7730c30cb4769e6e.png](https://i-blog.csdnimg.cn/blog_migrate/b957ed3f2c0d8fa33935be0edd586b90.png)
3.标量子查询
3.1什么是标量子查询
![e0ff387160a3a2fa04fb503d5c0c60fc.png](https://i-blog.csdnimg.cn/blog_migrate/99cf2c6d1bec5819c52a50267eb867bf.jpeg)
3.2如何使用标量子查询
例子:大于平均成绩的学生的学号和成绩
![f3f5d66229a861176f2c96bd9f79ca7f.png](https://i-blog.csdnimg.cn/blog_migrate/3b73a4c37afd9492ae3b1f0686cd788d.png)
例子2:成绩介于差生(成绩<=60)平均成绩和优等生(成绩>80)平均成绩之间的学生
![e8fc16f7fd09f9a56ff2e1b3a19a2d67.png](https://i-blog.csdnimg.cn/blog_migrate/6979c63d265af75c643a7fe300732bf4.png)
3.3注意事项
标量子查询只能是一个数值,不可是一个数组
4.关联子查询
4.1什么是关联子查询,如何使用关联子查询
例子:找出每个课程中大于对应课程平均成绩的学生
![94759949ed4d8cf49653f5a8eca6ebe6.png](https://i-blog.csdnimg.cn/blog_migrate/80273a237609ea1a15a1c45780beb8da.png)
通过建立关联,将两表的课程号进行关联。
当子查询运行后,输出的课程平均成绩,只会与课程号相同的成绩进行比较。
4.2关联子查询什么时候用
在每个组里面进行比较的时候,可以使用,例子中通过课程号进行了分组,只会将相同课程号里的成绩与平均成绩进行比较。
5.各种函数
![8edfd3c779fa960af8637158afe220a8.png](https://i-blog.csdnimg.cn/blog_migrate/4b12934d4a6bd761fbb478b89a134156.jpeg)
![42a16f4d9a106faa7f96b938aa469e1b.png](https://i-blog.csdnimg.cn/blog_migrate/e9a0c501c276bee0d99c298b083c359e.jpeg)
![dd54b38f4bc85e1c79d68907c75f9388.png](https://i-blog.csdnimg.cn/blog_migrate/37c03bc8a7b9c25fe6e18e7a95a9e288.jpeg)
![23aeb651ad26037cbf5821c01224aaf4.png](https://i-blog.csdnimg.cn/blog_migrate/e45a2dfd90be1ac14f86569aaee5c44d.jpeg)
6.综合练习
![32f6e407d0019681617e9835810a8e4e.png](https://i-blog.csdnimg.cn/blog_migrate/d4dfe2a248951312cb70152438b8e179.jpeg)
![66bfc3c8cba3177b57f6af83ed6b8f28.png](https://i-blog.csdnimg.cn/blog_migrate/cbdf858297872b5e04568b95e06edc34.jpeg)
![0e972b406a595ec73723a81a3c01b772.png](https://i-blog.csdnimg.cn/blog_migrate/36f96e8be5f341da5f3a51687b6abdd3.jpeg)
![6718dc834446d3e3bf15d5010567e1a4.png](https://i-blog.csdnimg.cn/blog_migrate/33fbe532dba329fb9a077a2c7885e35e.jpeg)
![26ebed7390245ba0efb3419c682fbb61.png](https://i-blog.csdnimg.cn/blog_migrate/88b1bcd35f2fbd2b213fc5191d47b7c1.jpeg)
![635b6764ecff128f47242fc6af578945.png](https://i-blog.csdnimg.cn/blog_migrate/3cdee6537dad9707093c67e9ee7d92a1.jpeg)
![785ba6cc4252be36cdf07d59f6a80937.png](https://i-blog.csdnimg.cn/blog_migrate/d48bc444017c49b706b71ebb13651134.jpeg)
![b5acfde72400d4037c916a6304aba45c.png](https://i-blog.csdnimg.cn/blog_migrate/e1e4c5905cf0b543791b074b04ef4764.jpeg)
![26b078277319d5ac75808f312a76cf0e.png](https://i-blog.csdnimg.cn/blog_migrate/cbc06a0695bfd53751982775746f1bfe.jpeg)
![f062e9060e7c15c919b8f3d5995f1c4f.png](https://i-blog.csdnimg.cn/blog_migrate/09bb2be18ce28af0c0e079c6d7354df5.jpeg)