当前位置:首页 » 编程语言 » sql查询平均分
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

sql查询平均分

发布时间: 2023-08-05 20:10:48

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语句

Mysql求平均数就会用到avg聚合函数;示例如下:
SELECT AVG(分数) FROM 表名where sex='男生';

㈢ SQL求每个学生平均成绩

selects,学号,s,姓名,c,课程名,t,平均成绩

fromstudentass

leftjion

selectavg(成绩)as平均成绩,学号

fromscgroupby学号

)astont,学号=s,学号

leftjoinsconsc。学号=s,学号

leftjoincourseasconc。课程号=sc,课程号

功能:

SQL具有数据定义、数据操纵和数据控制的功能。

1、SQL数据定义功能:能够定义数据库的三级模式结构,即外模式、全局模式和内模式结构。在SQL中,外模式又叫做视图(View),全局模式简称模式(Schema),内模式由系统根据数据库模式自动实现,一般无需用户过问。

2、SQL数据操纵功能:包括对基本表和视图的数据插入、删除和修改,特别是具有很强的数据查询功能。

以上内容参考:网络-结构化查询语言

㈣ SQL按课程统计课程的平均分,要求显示课程名称、平均分

SELECT 课程.课程名称,AVG(选课.成绩)AS"平均成绩"

FROM 课程, 选课

where 选课.课程代码=课程.课程代码

GROUP BY 课程.课程名称

SQL中在统计每门课程的平均成绩、最高成绩和最低成绩

select b.课程zhuan名,avg(a.分数) as 平均成绩shu,max(a.分数) as 最高成绩,min(a.分数) as 最低成绩

from 成绩表 a,课程表 b

where a.课程号=b.课程号

group by b.课程名

(4)sql查询平均分扩展阅读:

由于SQL Servers数据库管理系统具有较高的数据管理性能,因其优越的性能,应用范围非常广,大量应用于服务器和客户体系结构中。SQL Servers数据库的性质主要由以下几个方面体现:系统的吞吐量、响应时间以及并行处理能力, 发出请求服务器回应的速度、还有不同屏幕之间切换的速度等等。

㈤ SQL求总分及平均值

SQL求总分及平均值的方法。

如下参考:

1.打开数据库软件,添加数据库,右键点击并选择新查询。

㈥ 查询每位同学的课程门数、总成绩、平均成绩”的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每个班级课程平均成绩

1. 一张学生成绩表内SQL查询每个班级每门课程的平均分

select avg(分数) as 平均分, rtrim(cast(sum(case when 分数>=60 then 1 end)/count(*)*100 as char(10)))+'%' as 及格率 from A group by 班级,课程

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

selectavg(成绩字段)平均成绩,sum(成绩字段)总成绩,count(课程字段)课程门数from表groupby学生字段;
3. 如何用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;

4. SQL查询语句,要得到每个班每门课程的平均分,以及每个班的人数。如图:

select 班级,avage(语文) as 语文,avage(数学) as 数学,count(*) as 人数 from table groub by 班级

5. sql 查询每个班级每门课程选课人数和平均分

select class,cname,count(sno) as '选课人数',avg(grade) as '平均版分权'
from student a join sc b on a.sno=b.sno join course c on b.cno=c.cno
group by class,cname

6. 查询每位同学的课程门数、总成绩、平均成绩”的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

7. 用SQL查询,某门课程每个班的总平均分(从高到低排列)

SELECT
AVG(数学)from
分数表
group
by
班级
order
by
AVG(数学)DESC
希望是满意答案,急需!!!!!!!!谢谢

8. SQL求每个学生平均成绩

select student.学号,student.姓名, course.课程名,(select avg(sc.成绩版) from sc where sc.学号权=student.学号) as 平均成绩 from student inner join sc on student.学号=sc.学号 inner join course on sc.课程号=course.课程号

9. SQL问题:如何分别给每个班算平均分

select 班级,avg(table.科目1) as 别名 ,avg(table.科目2) as 别名2,...,
from 表名
group by 班级
SQL查询语句,要得到每个班每门课程的平均分,专以及每属个班的人数
select 班级,avage(table.科目) as 别名,avage(科目2) as 别名2,count(*) as 人数 from table groub by 班级