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

sql学生成绩平均值

发布时间: 2023-05-21 06:29:36

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 班级

⑵ 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语句求一个学生表的学生成绩的平均成绩

问题:假设有张学生成绩表(tb)如下:
姓名
课程
分数
张三
语文
74
张三
数学
83
张三
物理
93
李四
语文
74
李四
数学
84
李四
物理
94
想变成(得到如下结果):
姓名
语文
数学
物理
----
----
----
----
李四
74
84
94
张三
74
83
93
-------------------
*/

create
table
tb(姓名
varchar(10)
,
课程
varchar(10)
,
分数
int)
insert
into
tb
values('张三'
,
'语文'
,
74)
insert
into
tb
values('张三'
,
'数学'
,
83)
insert
into
tb
values('张三'
,
'物理'
,
93)
insert
into
tb
values('李四'
,
'语文'
,
74)
insert
into
tb
values('李四'
,
'数学'
,
84)
insert
into
tb
values('李四'
,
'物理'
,
94)
go

--sql
server
2000
静态sql,指课程只有语文、数学、物理这三门课程。(以下同)
select
姓名
as
姓名
,
max(case
课程
when
'语文'
then
分数
else
0
end)
语文,
max(case
课程
when
'数学'
then
分数
else
0
end)
数学,
max(case
课程
when
'物理'
then
分数
else
0
end)
物理
from
tb
group
by
姓名

--sql
server
2000
动态sql,指课程不止语文、数学、物理这三门课程。(以下同)
declare
@sql
varchar(8000)
set
@sql
=
'select
姓名
'
select
@sql
=
@sql
+
'
,
max(case
课程
when
'''
+
课程
+
'''
then
分数
else
0
end)
['
+
课程
+
']'
from
(select
distinct
课程
from
tb)
as
a
set
@sql
=
@sql
+
'
from
tb
group
by
姓名'
exec(@sql)

--sql
server
2005
静态sql。
select
*
from
(select
*
from
tb)
a
pivot
(max(分数)
for
课程
in
(语文,数学,物理))
b

--sql
server
2005
动态sql。
declare
@sql
varchar(8000)
select
@sql
=
isnull(@sql
+
'],['
,
'')
+
课程
from
tb
group
by
课程
set
@sql
=
'['
+
@sql
+
']'
exec
('select
*
from
(select
*
from
tb)
a
pivot
(max(分数)
for
课程
in
('
+
@sql
+
'))
b')

---------------------------------

/*
问题:在上述结果的基础上加平均分,总分,得到如下结果:
姓名
语文
数学
物理
平均分
总分
----
----
----
----
------
----
李四
74
84
94
84.00
252
张三
74
83
93
83.33
250
*/

--sql
server
2000
静态sql。
select
姓名
姓名,
max(case
课程
when
'语文'
then
分数
else
0
end)
语文,
max(case
课程
when
'数学'
then
分数
else
0
end)
数学,
max(case
课程
when
'物理'
then
分数
else
0
end)
物理,
cast(avg(分数*1.0)
as
decimal(18,2))
平均分,
sum(分数)
总分
from
tb
group
by
姓名

--sql
server
2000
动态sql。
declare
@sql
varchar(8000)
set
@sql
=
'select
姓名
'
select
@sql
=
@sql
+
'
,
max(case
课程
when
'''
+
课程
+
'''
then
分数
else
0
end)
['
+
课程
+
']'
from
(select
distinct
课程
from
tb)
as
a
set
@sql
=
@sql
+
'
,
cast(avg(分数*1.0)
as
decimal(18,2))
平均分
,
sum(分数)
总分
from
tb
group
by
姓名'
exec(@sql)

--sql
server
2005
静态sql。
select
m.*
,
n.平均分
,
n.总分
from
(select
*
from
(select
*
from
tb)
a
pivot
(max(分数)
for
课程
in
(语文,数学,物理))
b)
m,
(select
姓名
,
cast(avg(分数*1.0)
as
decimal(18,2))
平均分
,
sum(分数)
总分
from
tb
group
by
姓名)
n
where
m.姓名
=
n.姓名

--sql
server
2005
动态sql。
declare
@sql
varchar(8000)
select
@sql
=
isnull(@sql
+
','
,
'')
+
课程
from
tb
group
by
课程
exec
('select
m.*
,
n.平均分
,
n.总分
from
(select
*
from
(select
*
from
tb)
a
pivot
(max(分数)
for
课程
in
('
+
@sql
+
'))
b)
m
,
(select
姓名
,
cast(avg(分数*1.0)
as
decimal(18,2))
平均分
,
sum(分数)
总分
from
tb
group
by
姓名)
n
where
m.姓名
=
n.姓名')

drop
table
tb

⑷ 有一个成绩表,用SQL语句,如何计算一个学生的平均成绩啊

楼上是正解。如果有需要查出全部学生的话可以这样:select 学号,avg(成绩) as 平均成绩 from 成绩表 group by 学号

⑸ 求大神解答用SQL语句如何求总成绩的平均成绩,

update pstest set F_SUN = F_MATH + F_CH + F_EN;
把所有的学生的总成绩都填上了
然后
看题意平均成绩是要插入一条数据
insert into pstest values ("平均成绩",select sum(F_MATH)/3 from pstest, select sum(F_CH)/3 from pstest,select sum(F_EN)/3 from pstest,select sum(F_SUN)/3 from pstest);

⑹ 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求总分及平均值

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

如下参考:

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

⑻ SQL语句 计算每个班的高考总分平均分,显示班级号和高考平均分

SQL语句如下:

select班级号, avg(总成绩)

from (

elect班级号,学生号,sum(成绩) 总成绩

from表

)

语言特色:

结构化查询语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统。

可以使用相同的结构化查询语言作为数据输入与管理的接口。结构化查询语言语句可以嵌套,这使它具有极大的灵活性和强大的功能。

⑼ 查询每位同学的课程门数、总成绩、平均成绩”的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 SELECT语句查询每个学生的平均成绩,在线等。

insert into pinjun(学生姓名, 平均成绩) select s.学生姓名,avg(c.成绩) from 学生表 s,成绩表 c where s.学生id=c学生id group by 学生id,学生姓名 order by avg(c.成绩) desc,c.学生姓名