![7247be51d7caef1277e6e1d1b41c5669.png](https://i-blog.csdnimg.cn/blog_migrate/82109698b481b0dd46523742999da236.jpeg)
一、汇总函数:
1、COUNT:COUNT(column_name) 函数返回指定列的值的数目(NULL 不计入);
语法:SELECT COUNT(column_name) FROM table_name
COUNT(*) 函数返回表中的记录数:可记录所有的列,包括null值;
2、sum(列名):只能对某列数据求和;且只能对数值类型列计算;
3、avg(列名):求某列平均值;且只能对数值类型列计算;
4、max(列名):最大值;min(列名):最小值;
5、sql运行顺序:from-where-groupby-having-select-orderby-limit
5、练习:
(1)求和:
![38fe3846500615453c40011a8288167f.png](https://i-blog.csdnimg.cn/blog_migrate/63f3df47b3d29efb0b86c28acb7c2462.png)
(2)计数
![bde516be1df8b4077de2d34a841b3c3f.png](https://i-blog.csdnimg.cn/blog_migrate/616cb8984320d80d49cd97ee1f128c6b.png)
二、分组函数
1、分组函数:group by语句;
GROUP BY 语句用于结合合计函数,根据一个或多个列对结果集进行分组。
语法 ④ SELECT column_name, aggregate_function(column_name)
① FROM table_name
② WHERE column_name operator value
③ GROUP BY column_name
①②③④,表明sql运行顺序;
2、练习:
(1)查找最高,最低分;
![591eebdc5e642857d1afad7b98b1ffc1.png](https://i-blog.csdnimg.cn/blog_migrate/363c6b75f79c35ad3672b923a919da85.jpeg)
![091bf9163a7c35de100c1fbe26233dcf.png](https://i-blog.csdnimg.cn/blog_migrate/bad3ea881d96e393738dc74b5c7442e8.png)
(2)查询每门课程被选修的学生数
![4ced22890288f51b863badb9334202f9.png](https://i-blog.csdnimg.cn/blog_migrate/188eae7f98834c40901368d204e28171.png)
(3)查询男生,女生人数
![1c00df130fbd6ab801577ba7c83dfcfd.png](https://i-blog.csdnimg.cn/blog_migrate/053cee18b40e076b8bb2b161b62f5825.png)
三、对分组结果指定条件;
having函数:在 SQL 中增加 HAVING 子句原因是,WHERE 关键字无法与合计函数一起使用。
语法:SELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name
HAVING aggregate_function(column_name) operator value
练习:
(1)查询平均成绩大于60分的学生;
![fa9036bcc9d8a70ebaba9d471a54bc35.png](https://i-blog.csdnimg.cn/blog_migrate/8fa1656a1350fe5e353a086efd165b3c.jpeg)
(2)查询至少选修两门课程的学生学号
![9a6bc24706d59b3b90f29d404e8f3204.png](https://i-blog.csdnimg.cn/blog_migrate/2ff6412a6db63b2a9aebc3cfc10b94d2.png)
(3)查询同名学生名单并统计人数
![c729d37da4aa1eb0a60b8589ee7e8fd9.png](https://i-blog.csdnimg.cn/blog_migrate/66c07a01396854d5bf23c8360e218f90.png)
四、sql解决业务问题
核心:翻译目标→写出分析思路→写出对应sql语句;
1、求每门课程平均成绩;
![00b1eb6ba0642cb5921160ff9dd64197.png](https://i-blog.csdnimg.cn/blog_migrate/cb66aa040a22add3a19d5e1220c27c2e.jpeg)
2、平均成绩大于80;
![0d147a945c5debc363d7ee7a2fb3cef5.png](https://i-blog.csdnimg.cn/blog_migrate/3c644e6fdde0e231f775cd47b4cf7d9c.png)
五、对查询结果排序;
1、order by;用于对结果集进行排序。语句默认按照升序对记录进行排序。
desc:降序;asc:升序;
2、limit:从查询结果中取出制定行;
3、练习:
(1)筛选出成绩小于60的课程,并倒叙排列;
![8b6fd0faaa9e026959a54931e485cf94.png](https://i-blog.csdnimg.cn/blog_migrate/53492572e525afe27f2ae9957b676fe3.jpeg)
(2)筛选出成绩大于60的课程,并倒叙排列;
![58577a79319fcff027d3f51b2d6c54ee.png](https://i-blog.csdnimg.cn/blog_migrate/1155b726aecb0e67fb22e862c415dbe9.jpeg)
3、查询平均成绩,并且将成绩正序排列,成绩相同时,课程号倒叙排列
![7140328f2e830115b8088b112547facf.png](https://i-blog.csdnimg.cn/blog_migrate/e5186040819bc12fd397f521799f9e37.jpeg)
六、看懂报错信息;
1、常见错误:
(1)group by中使用select的别称;
(2)where 中使用聚合函数;
(3)字符串类型的数字;
2、总结:
sql运行顺序:from-where-groupby-having-select-orderby-limit
七、sqlzoo联系:
1、错误分析:
① in用法:
![4dca882e353fee8c75219a69df965164.png](https://i-blog.csdnimg.cn/blog_migrate/fa610493aa32e1a34a4657f213d089ce.jpeg)
IN 操作符允许我们在 WHERE 子句中规定多个值。
SQL IN 语法:in 后面直接用英文逗号(,d)隔开;
SELECT column_name(s)
FROM table_name
WHERE column_name IN (value1,value2,...)
(2)单引号,跳脱字符,需要用双引号替代;
![741eed2ab51511f88f5428c51131dc4e.png](https://i-blog.csdnimg.cn/blog_migrate/1b87df70edf4ca240b2c5422a5dbe872.jpeg)
(3)subject IN ('Chemistry','Physics')can be used as a value - it will be0or1.
![1343b4f90969f95a0864c5c70c98d96e.png](https://i-blog.csdnimg.cn/blog_migrate/50a0819598c00537634222fbab9d99b9.jpeg)
2、二次训练
![bd17152c293afe02c2a2e368baa3742e.png](https://i-blog.csdnimg.cn/blog_migrate/10674f8728f64d0fc73438683c263d34.jpeg)
![919ae9cc8d485d009ca144e47d621262.png](https://i-blog.csdnimg.cn/blog_migrate/da6866c7296bf13f6ad737e3f5c5d9c3.jpeg)
![7d5ac199a3ad77cdb44adc6e99244a39.png](https://i-blog.csdnimg.cn/blog_migrate/9ea0202650f73a1d16e44ff0fe2ca9f9.jpeg)
![b9424c1f0d35beac20e30f23af4e2796.png](https://i-blog.csdnimg.cn/blog_migrate/b1514da4798af226e4069850e49fc3b3.jpeg)
![8770094fcfa0bc80bc70dbddd715240c.png](https://i-blog.csdnimg.cn/blog_migrate/d61b6286d0c146f4b0803b784f7d9e44.jpeg)
![1d9f322dbb84ebcd9a4c0a9da4ee41e6.png](https://i-blog.csdnimg.cn/blog_migrate/57f77586da216513473e8ee691b61d6c.jpeg)
![9c35498fcd38d53275d232c7f56cb013.png](https://i-blog.csdnimg.cn/blog_migrate/f97b3d70d5f41fe07699d2441247d0d4.jpeg)
![e8cbfb31d2eadb2b319e67ac6f37c107.png](https://i-blog.csdnimg.cn/blog_migrate/16ac1f809bd053da91eb944f609ca38a.jpeg)
![621219a9424a3ffb9306d79556b6252a.png](https://i-blog.csdnimg.cn/blog_migrate/05394e28e759793191b36f93dce0a54b.jpeg)
![a89b252da768ab01c5fe18d0cf296f1d.png](https://i-blog.csdnimg.cn/blog_migrate/a45b189de7611905cdf006d5dd95fd98.jpeg)
![534073abb51374383d0940591b531cd7.png](https://i-blog.csdnimg.cn/blog_migrate/e16f996df2e4ae25b61d825d97c59311.jpeg)
![0028821e3a8b73261f154ba4a210ef91.png](https://i-blog.csdnimg.cn/blog_migrate/76bc6afcf7a4a919059664ba169f19a6.jpeg)
![e90078ce14e31b693db895bb52b76180.png](https://i-blog.csdnimg.cn/blog_migrate/5c029df4423f4a7cae1b3ec0f8fbe2b6.jpeg)
![29b8689bf0d4682cf3a8c29309217895.png](https://i-blog.csdnimg.cn/blog_migrate/013a3a807656789787f8c671cef75505.jpeg)
SUM and COUNT:
![6cdea5171234899642c96b6de5f0b56c.png](https://i-blog.csdnimg.cn/blog_migrate/edca8c34f4c793be1e158bb8353cef4e.jpeg)
![885c542c37cb615015679315f1a142ce.png](https://i-blog.csdnimg.cn/blog_migrate/50f2202c9c1a0506f40f6bf994379b2c.jpeg)
![b2b96a4d1999cb592cef791f281c63e9.png](https://i-blog.csdnimg.cn/blog_migrate/b04f5ff9229fbf7808c55225df2366e8.jpeg)
![614a25d3ef69694851f244a53204bc0f.png](https://i-blog.csdnimg.cn/blog_migrate/cda19e07cd06650b6d021cc30974bcd9.jpeg)
![91ac582716dce4387c1b9a60f37605d2.png](https://i-blog.csdnimg.cn/blog_migrate/0b6614dc25a9a3cc939871b9e2b864ae.jpeg)
![f89e4dcc4632924c2135660abc258bc4.png](https://i-blog.csdnimg.cn/blog_migrate/cd71ca724fe4e771a9d8a9ecd55c21a8.jpeg)
![81821d76acd72b9665ff2e4bf6ca3108.png](https://i-blog.csdnimg.cn/blog_migrate/2dfb2ff7e8095e6143b01d886cb9c1ac.jpeg)
![1a574522ec615bf0f108d9c4cab3bd31.png](https://i-blog.csdnimg.cn/blog_migrate/20a4043fd6244d2b8e049c0b0be9ec4b.jpeg)
错误分析:运行顺序错误;where 和having 运行条件需要熟练;
![0674b6548ca7f1254f233fd4eea9e594.png](https://i-blog.csdnimg.cn/blog_migrate/86514658c8c69290941570755e61c423.jpeg)
![3d94b7dabfdcb897c73298163ec3c259.png](https://i-blog.csdnimg.cn/blog_migrate/e9234aac8e4f3aa580a4dfa8614f3a54.jpeg)