sql 分组求和_七天学会SQL-03SQL汇总分析
一、汇总分析
常用的汇总分析函数有下面几种。
例如从成绩表中查询成绩求和(所用数据表在第一课已共享)
select sum(成绩) from score;select sum(成绩) from score;
从成绩表中查询成绩平均值
select avg(成绩) from score;select avg(成绩) from score;
从成绩表查询成绩最大值和最小值
select max(成绩),min(成绩) from score;select max(成绩),min(成绩) from score;
二、分组
SQL分组:group by
select 性别,count(*) from student where 出生日期>"1990-01-01" group by 性别;select 性别,count(*) from student where 出生日期>"1990-01-01" group by 性别;
第一步:from从哪张表查找数据
第二步:where查找条件
第三步:group by数据分组
第四步:应用函数+组合结果
一定要记住运行的逻辑顺序,以后解决问题都是必备。
三、对分组结果指定条件
对分组结果指定条件 having
select性别,count(*) from student group by 性别 having count(*)>1;select性别,count(*) from student group by 性别 having count(*)>1;
四、用SQL解决业务问题
如何用SQL解决业务问题?
第一步:把所需解决问题分解为一个个可数据化的指标
第二步:写出分析思路
第三步:写出对应SQL句子。
举例:如何计算每门课程的平均成绩?
/* select 查询结果[每门课程的课程号:分组,平均成绩:avg(成绩)] from 从哪张表中查询数据[成绩表:score] where 查询条件[没有] group by 分组[每门课程:按课程号分组] having 对分组结果指定条件[没有] */ select 课程号,avg(成绩) from score group by 课程号;/* select 查询结果[每门课程的课程号:分组,平均成绩:avg(成绩)] from 从哪张表中查询数据[成绩表:score] where 查询条件[没有] group by 分组[每门课程:按课程号分组] having 对分组结果指定条件[没有] */ select 课程号,avg(成绩) from score group by 课程号;
五、对查询结果排序
对查询结果排序 order by
六、如何看懂报错信息
常见的几种错误
最主要的问题还是书写格式!!所有符号用英文!!!
希望对大家有所帮助,感谢猴子老师的课件。
一、汇总分析 常用的汇总分析函数有下面几种。 例如从成绩表中查询成绩求和(所用数据表在第一课已共享) select sum(成绩) from score; 从成绩表中查询成绩平均值 select avg(成绩) from score; 从成绩表查询成绩最大值和最小值 select max(成绩),min(成绩) from score; 二、分组 SQL分组:group by select 性别,count(*) from student where 出生日期>"1990-01-01" group by 性别; 第一步:from从哪张表查找数据 第二步:where查找条件 第三步:group by数据分组 第四步:应用函数+组合结果 一定要记住运行的逻辑顺序,以后解决问题都是必备。 三、对分组结果指定条件 对分组结果指定条件 having select性别,count(*) from student group by 性别 having count(*)>1; 四、用SQL解决业务问题 如何用SQL解决业务问题? 第一步:把所需解决问题分解为一个个可数据化的指标 第二步:写出分析思路 第三步:写出对应SQL句子。 举例:如何计算每门课程的平均成绩? /* select 查询结果[每门课程的课程号:分组,平均成绩:avg(成绩)] from 从哪张表中查询数据[成绩表:score] where 查询条件[没有] group by 分组[每门课程:按课程号分组] having 对分组结果指定条件[没有] */ select 课程号,avg(成绩) from score group by 课程号; 五、对查询结果排序 对查询结果排序 order by 六、如何看懂报错信息 常见的几种错误 最主要的问题还是书写格式!!所有符号用英文!!! 希望对大家有所帮助,感谢猴子老师的课件。