在数据库SQL语句层面,若何统计一些前提的平均值呢?好比,若何统计一门课程的平均分,若何统计学生的平均分呢?这个时辰就需要利用到avg函数
建立一个姑且表,用于演示sqlserver语法中的平均值AVG利用。好比,计较一门课程的平均分数(本文以sqlserver数据库为例演示)
IF OBJECT_ID('tempdb..#tblAvg') IS NOT NULL DROP TABLE #tblAvg;
CREATE TABLE #tblAvg(
StuName varchar(50), -- 学生名字
Course varchar(50), -- 课程
Grade float -- 分数
);
往姑且表中插入几行测试数据,模拟学生的成就
insert into #tblAvg(StuName, Course, Grade) values('张三', '语文', 85);
insert into #tblAvg(StuName, Course, Grade) values('张三', '数学', 90);
insert into #tblAvg(StuName, Course, Grade) values('李四', '语文', 92);
insert into #tblAvg(StuName, Course, Grade) values('李四', '数学', 86);
查询姑且表中的测试数据
select * from #tblAvg;
利用AVG函数,统计语文的平均分,利用体例如下
select '语文平均分' = AVG(Grade)
from #tblAvg
where Course = '语文'
利用AVG函数,统计数学的平均分,利用体例如下
select '数学平均分' = AVG(Grade)
from #tblAvg
where Course = '数学'
利用AVG函数,按照课程统计平均分,这个时辰需要借助于group by,按照课程分组统计,利用体例如下
select '课程' = course, '平均分' = AVG(Grade)
from #tblAvg
group by Course
利用AVG函数,按照学生统计平均分,这个时辰同样需要借助于group by,按照学生分组统计,利用体例如下
select '学生' = StuName, '平均分' = AVG(Grade)
from #tblAvg
group by StuName
0 篇文章
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!