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

sql分数线查询

发布时间: 2022-03-08 21:36:39

‘壹’ 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语句求平均成绩

1、打开数据库软件,附加数据库,右键选择新建查询。

‘叁’ 一个sql查询成绩语句问题

问问题前请先给出表结构,否则回答者跟你所需或有差异
另外我的理解是成绩前3名又要考虑到并列的情况,那么这前3名应该为“分数数值前3的所有学生(并非只是3名)”
SELECT
*
FROM
TB_Student
WHERE
stuId
in(
SELECT
stuId
FROM
TB_Score
WHERE
scores
in
(
SELECT
TOP
3
scores
FROM
TB_Score
ORDER
BY
scores
DESC
)
)
解释:根据成绩表TB_Score中的成绩倒叙排列取分数最高的3个分数数值;
再从成绩表中检索分数等于上面3个数值的所有学生编号stuId;
最后根据获得的stuId检索学生信息表获得所需信息
PS:网络管理员看到,强烈建议增加代码显示功能,默认的结构层次看的太碍眼

‘肆’ 查询学生总成绩的sql语句

select 学生.学号 as 姓名, sum(成绩.分数) as 总分
from 学生
left join 成绩 on 成绩.学号=学生.学号
group by 学生.学号

sql语句

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

  2. 查找:select * from table1 where field1 like '%value1%' (所有包含'value1'这个模式的字符串)

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

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

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

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

  7. 最小:select min(field1) as minvalue from table1[separator]

‘伍’ SQL查询学生成绩

--代码如下--
SELECTa.snameAS'姓名'
MAX(CASEb.sidWHEN'0001'THENb.scoreELSE0END)AS'语文'
MAX(CASEb.sidWHEN'0002'THENb.scoreELSE0END)AS'数学'
MAX(CASEb.sidWHEN'0003'THENb.scoreELSE0END)AS'英语'
FROMstudenta,scoresbONa.sid=b.sid
GROUPBYb.sid

‘陆’ sql查询问题 查询成绩分布情况

呵呵,你这是一堆的问题呀:

优秀、良好……各级别的(人数):
首先,假设你的分数是 百分制,优秀即高于85分等。。。。
因此:

select 课程,count(*) as 人数,‘优秀’ as 类别
from 成绩
where 分数>85
group by 课程
union
select 课程,count(*) as 人数,‘良好’ as 类别
from 成绩
where 分数>70 and 分数<=85
group by 课程
union
select 课程,count(*) as 人数,‘及格’ as 类别
from 成绩
where 分数>60 and 分数<=70
group by 课程

分布情况及百分比:
得根据上面的结果来再计算。
先弄个总人数的视图:select count(*) as 总人数 from 成绩
再计算百分比:
select 课程,人数/总人数*100% as 百分比 from 各级别人数 group by 课程,类别

其他的统计也就雷同了。

‘柒’ 简单SQL语句,查询成绩

select * from xs
inner join
(
select km,max(fs) as fs from xs group by km
)w
on xs.km = w.km and xs.fs = w.fs

这样行不?凭想象写的,请参考

‘捌’ sql查询学生成绩表最高分数

以下这些英文都是学生表的常用的,希望你能看懂
1,查询选了所有课的学生
select
sname
from
student
where
snum=(select
sc.snum
from
sc
where
sc.snum=student.snum
group
by
sc.snum
having
count(*)=n)
2.查询不及格学生姓名和挂科的科目
select
sname,cname
from
student,sc,course
where
sc.snum=student.snum
and
sc.cnum=course.cnum
and
score<60
3.查询每个课程选修人数和挂科人数(这个比较复杂)
select
cname,count(不及格)as
选修人数,sum(不及格)as
不及格人数
from(select
cname,case
when
score<60
then
1
else
0
end
as
不及格
from
sc,student,course
where
sc.cnum=course.cnum
and
sc.snum=student.snum)as
abc
group
by
cname

‘玖’ 请问SQL 查询出成绩最高分

请问SQL 查询出成绩最高分
select 姓名,课程名,成绩 from tablename where 成绩=(select max(成绩) from tablename)

‘拾’ 怎样使用sql语句可以多条件查询 比如成绩等级划分

select sum(case when '成绩'=100.0 then 1 else 0 end),
sum(case when '成绩'<100 and '成绩' >=90 then 1 else 0 end),
sum(case when '成绩'<90 and '成绩' >=80 then 1 else 0 end),
sum(case when '成绩'<80.0 and '成绩' >=70 then 1 else 0 end),
sum(case when '成绩'<70.0 and '成绩' >=60 then 1 else 0 end),
sum(case when '成绩'<60 then 1 else 0 end) from table
可以按分数间隔统计出成绩分布,分别是100分有多少人,90~100,80~90,70~80,60~70,60以下的区间分别有多少人。