当前位置:首页 » 成绩查询 » sql查询平均成绩

sql查询平均成绩

发布时间: 2020-12-01 11:05:43

① SQL查询平均成绩

select
classid
as
班级编号,max(case
when
sex=0
then
avg_grade
else
0
end)
as
男生平均成绩版权,
max(case
when
sex=1
then
avg_grade
else
0
end)
as
女生平均成绩
from
(select
classid,sex,avg(grade)
as
avg_grade
from
student
a
inner
join
sc
b
on
a.id=b.id
)
t
group
by
classid

② SQL语句 查询各学院平均成绩最高的学生姓名及平均成绩

select
学生表.学号,学生表.姓名,
average(成绩表.成绩)
as
平均内成绩,
max(成绩表.成绩)
as
最高成绩,
min(成绩表.成绩)
as
最低成绩
from
学生表容
left
join
成绩表
on
学生表.学号=成绩表.学号
order
by
学生表.学号
成绩表可换成语文、数学、英语等,查询结果就是各个学生相应课程的平均成绩、历史最高成绩、历史最低成绩。

③ sql查询某个学生的平均成绩的排名

1
2
3
4
5
6
7
8
9
10
11

select s.dname,s.sname,s.avggrade
from
(select t.dname,t.sname,t.avggrade,row_number() over (partition by t.dname order by t.avggrade desc) rn
from
(select a.name dname,b.name sname,avg(c.grade) avggrade
from
department a,student b,takes c
where a.department_id=b.department_id
and b.student_id=c.student_id
group by a.name,b.name) t) s
where s.rn=1

包含并列的情况,如果一个学院有两个第一,两个人都显示,以上为 sqlserver或oracle写法,其他数据库执行不了
-------------补充-----------
给你个通用的

select s2.*
from
(select t.dname,max(t.avggrade) avggrade
from
(select a.name dname,b.name sname,avg(c.grade) avggrade
from
department a,student b,takes c
where a.department_id=b.department_id
and b.student_id=c.student_id
group by a.name,b.name) t
group by t.dname) s1,
(select a.name dname,b.name sname,avg(c.grade) avggrade
from
department a,student b,takes c
where a.department_id=b.department_id
and b.student_id=c.student_id
group by a.name,b.name) s2
where s1.dname=s2.dname
and s1.avggrade=s2.avggrade

④ sql查询姓李的学生的平均成绩

工具/材料:Management Studio。

1、首先在桌面上,点击“Management Studio”图标。

⑤ sql同时查询学生平均分和课程平均分

话不多说,直接上代码,后面是代码解析

SELECTstu.snameAS姓名,cou.cnameAS课程名,sco.degreeAS成绩,t3.AvgdegreeAS每人平均分,t4.AvgdegreeAS每门课程平均分
FROMStudentstu
INNERJOINScorescoONstu.sno=sco.sno
INNERJOINCoursecouONcou.cno=sco.cno
INNERJOIN
(
SELECTt1.sno,t1.sname,AVG(t2.degree)ASAvgdegree
FROMStudentt1
INNERJOINScoret2ONt1.sno=t2.sno
GROUPBYt1.sno,t1.sname
)t3ONstu.sno=t3.sno
INNERJOIN
(
SELECTcno,AVG(degree)asAvgdegree
FROMscore
GROUPBYcno
)t4ONsco.cno=t4.cno

代码解析:

  1. 该问题的关键点在于,怎么用一行代码计算出每人的平均分,以及每门课程的平均分

  2. 这时需要用到临时表T3、T4

  3. 临时表T3,用于计算每人平均分

  4. 临时表T4,用于计算每门课程平均分

⑥ 使用SQL SELECT语句查询每个学生的平均成绩,在线等。

你没有告诉学生表和成绩表的关联字段,假设是id。 select 学生.姓名,avg(成绩回.成绩) as 平均成绩 into pinjun.dbf
from 学生答 inner join 成绩 on 学生.id=成绩.id
order by 学生.姓名

⑦ SQL数据库命令,求救查询平均成绩!万分感谢!

SQL数据库命令,求救查询平均成绩!
select 学号回, avg(分数) from grade group by 学号 having count(distinct 课程答编号) > 1

select 学号 as u_编号, 姓名 as u_名称
from student_info where 姓名 like '张%'
union
select 课程编号 as u_编号, 课程名称 as u_名称
from curriculum

⑧ SQL一个查询中包含两个聚集函数怎么弄啊例如,查询每名学生的选课门数和平均成绩怎么弄啊

SELECT
Student.Sname,
COUNT(distinct Course.Cno) AS 选课门数,
AVG(Sc.Grade) AS 平均成绩
FROM
SC
JOIN Student ON (SC.Sno = Student.Sno)
JOIN Course ON (SC.Cno = Course.Cno)
GROUP BY
Student.Sname

Sname 选课门数 平均成绩
---------- ----------- -----------
李勇 3 88
刘晨 2 72
钱小平 2 87
王大力 1 85
吴宾 4 74
张海 2 68
警告: 聚合或其他 SET 操作消除了空值。

-----

SELECT
Student.Sname,
COUNT(distinct Course.Cno) AS 选课门数,
AVG(Sc.Grade) AS 平均成绩
FROM
SC
JOIN Student ON (SC.Sno = Student.Sno)
JOIN Course ON (SC.Cno = Course.Cno)
GROUP BY
Student.Sname
HAVING
COUNT(distinct Course.Cno) >= 4

Sname 选课门数 平均成绩
---------- ----------- -----------
吴宾 4 74
警告: 聚合或其他 SET 操作消除了空值。

⑨ 查询每位同学的课程门数、总成绩、平均成绩”的SQL语句是什么

SQL语句如下:

SELECT 学号, Count(课程编号) AS 课程总数, Sum(成绩) AS 总分数, Avg(成绩) AS 平均分

FROM 成绩表

GROUP BY 学号;

SQL常用操作语句如下:

选择:select * from table1 where 范围

插入:insert into table1(field1,field2) values(value1,value2)

删除:delete from table1 where 范围

更新:update table1 set field1=value1 where 范围

查找:select * from table1 where field1 like ’%value1%’

排序:select * from table1 order by field1,field2 [desc]

总数:select count as totalcount from table1

求和:select sum(field1) as sumvalue from table1

平均:select avg(field1) as avgvalue from table1

最大:select max(field1) as maxvalue from table1

最小:select min(field1) as minvalue from table1

⑩ 用SQL语句查询各门课程的平均成绩,结果按平均成绩排序·

创建表:

SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOSET ANSI_PADDING ONGOCREATE TABLE [dbo].[stuscore]

( [name] [varchar](50) COLLATE Chinese_PRC_CI_AS NULL,

[subject] [varchar](50) COLLATE Chinese_PRC_CI_AS NULL,

[score] [int] NULL,

[stuid] [int] NULL)

ON [PRIMARY]

GO

SET ANSI_PADDING OFF

插入数据:

insert into dbo.stuscore values ('张三','数学',89,1);

insert into dbo.stuscore values ('张三','语文',80,1);

insert into dbo.stuscore values ('张三','英语',70,1);

insert into dbo.stuscore values ('李四','数学',90,2);

insert into dbo.stuscore values ('李四','语文',70,2);

insert into dbo.stuscore values ('李四','英语',80,2);

查询结果如下:

列出各门课程的平均成绩:

select subject,AVG(score)平均成绩 from stuscore
group by subject;

热点内容
武汉大学学生会辅导员寄语 发布:2021-03-16 21:44:16 浏览:612
七年级学生作文辅导学案 发布:2021-03-16 21:42:09 浏览:1
不屑弟高考成绩 发布:2021-03-16 21:40:59 浏览:754
大学毕业证会有成绩单 发布:2021-03-16 21:40:07 浏览:756
2017信阳学院辅导员招聘名单 发布:2021-03-16 21:40:02 浏览:800
查询重庆2018中考成绩查询 发布:2021-03-16 21:39:58 浏览:21
结业考试成绩怎么查询 发布:2021-03-16 21:28:40 浏览:679
14中医医师资格笔试考试成绩查分 发布:2021-03-16 21:28:39 浏览:655
名著赏析课程标准 发布:2021-03-16 21:27:57 浏览:881
北京大学商业领袖高端培训课程 发布:2021-03-16 21:27:41 浏览:919