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

sql查询学生成绩并列

发布时间: 2023-05-30 11:39:30

‘壹’ sql语句查询每个学生的学号、姓名、平均成绩、最高成绩和最低成绩

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

‘贰’ 按照人名查出学生的各科成绩以及总成绩并按总成绩排名的sql语句

按照人名查出学生的各科成绩以及总成绩并按总成绩排名的sql语句示例如下:

selectA.name,

(selectB.scorefromtable_scoreBwhereB.type='数学'andA.id=B.id)as数学,

(selectB.scorefromtable_scoreBwhereB.type='语文'andA.id=B.id)as语文,

(selectB.scorefromtable_scoreBwhereB.type='英语'andA.id=B.id)as英语,

(selectSUM(B.score)fromtable_scoreBwhereA.id=B.id)assum_score

fromtable_studentAorderbysum_scoreDESC

以上sql语句首先把学生表和成绩表联合查出每个学生的数学、语文、英语成绩,然后通过selectSUM(B.score)fromtable_scoreBwhereA.id=B.id查出每个学生的总成绩。

最后orderbysum_scoreDESC实现按总成绩倒叙排列。


(2)sql查询学生成绩并列扩展阅读

上述sql语句重点是对as关键字的使用-Alias(别名),通过使用SQL,可以为列名称和表名称指定别名(Alias)。

表的SQLAlias语法

SELECTcolumn_name(s)FROMtable_nameASalias_name;

列的SQLAlias语法

SELECTcolumn_nameASalias_nameFROMtable_name;

Alias实例:使用表名称别名

假设我们有两个表分别是:"Persons"和"Proct_Orders"。我们分别为它们指定别名"p"和"po"。

现在,我们希望列出"JohnAdams"的所有定单。

我们可以使用下面的SELECT语句:

SELECTpo.OrderID,p.LastName,p.FirstNameFROMPersonsASp,Proct_OrdersASpoWHEREp.LastName='Adams'ANDp.FirstName='John'

‘叁’ 怎么用SQL的查询语句列出某同学所有课程的课程名和成绩啊,并按成绩从低到高排序啊

1、打开Microsoft SQL Server 2012,选中需要查询所有表的数据库

‘肆’ 按照人名查出学生的各科成绩以及总成绩并按总成绩排名的sql语句

/*

createtable学生表(

学号nvarchar(100)null,

姓名nvarchar(100)null)

createtable成绩表(

学号nvarchar(100)null,

科目nvarchar(100)null,

成绩decimal(10,1)null

)

insertinto学生表values('101','张三')

insertinto学生表values('104','李四')

insertinto则衡学生表values('107','王五')

insertinto学生表values('111','任六')

insertinto成绩表values('101','语文',90)

insertinto成绩表values('101','数学',91)

insertinto成绩表values('101','英语',92)

insertinto成绩表values('101','政治',93)

insertinto成绩表values('104','语文',96)

insertinto成宏和绩表values('104','数学',70)

insertinto成绩表values('104','英语',80)

insertinto成绩表values('104','政治',92)

insertinto成绩表values('107','语文',70)

insertinto成绩表values('107','数学',100)

insertinto成绩表values('107','英语',90)

insertinto成绩表values('107','政治',98)

insertinto成绩表values('111','语文',97)

insertinto成绩表values('111','数学',90)

insertinto成绩表values('111','英语',99)

insertinto成绩表values('111','政治',99)

*/

selectA.姓名

,(selectB.成绩from成绩表BwhereB.科目='语文'andA.学号=B.学号)as语文

,(selectB.成绩from成绩表BwhereB.科目='数学'andA.学号=B.学号)as数学

,(selectB.成绩from成绩表BwhereB.科目='英语'andA.学号=B.学号)as英语

,(selectB.成绩from成绩表BwhereB.科目='政治'andA.学号=B.学号)as政孙绝做治

,(selectSUM(B.成绩)from成绩表BwhereA.学号=B.学号)as总成绩

from学生表Aorderby总成绩DESC


查询结果:

‘伍’ SQL怎样同时查询多个学生多个科目的成绩

这个用到行转列

SELECT
`姓名编号`, MAX( CASE
WHEN course='项目1' THEN
"内容" END
) AS '项目1', MAX( CASE
WHEN course='项目2' THEN
"内容" END
) AS '项目2',
MAX( CASE
WHEN course='项目3' THEN
"内容" END
) AS '项目3' FROM
studentGROUP BY `姓名编号`

你可以参考下网站:网页链接

‘陆’ 查询学生总成绩的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语句

1、查询每个学生的各科成绩sql语句:

select a.studentid,a.name,a.sex,v1.score as '语文',v2.score as '数学', v3.score as '英语',v4.score

as ‘哲学’, (v1.score+v2.score+v3.score+v4.score)/4 as ‘平均成绩’ from Stuednt a
left join

(select studentid,score from grade where cid=(select cid from course where cname='语文'))as v1

on a.studentid=v1.studentid

left join

(select studentid,score from grade where cid=(select cid from course where cname='数学'))as v2

on a.studentid=v2.studentid

left join

(select studentid,score from grade where cid=(select cid from course where cname='英语'))as v3

on a.studentid=v3.studentid

left join

(select studentid,score from grade where cid=(select cid from course where cname='哲学'))as v4

on a.studentid=v4.studentid

order by a.studentid

2、sql数据库介绍:

(1)SQL是Structured Query Language(结构化查询语言)的缩写。SQL是专为数据库而建立的操作命令集,是一种功能齐全的数据库语言。在使用它时,只需要发出"做什么"的命令,"怎么做"是不用使用者考虑的。

(2)SQL功能强大、简单易学、使用方便,已经成为了数据库操作的基础,并且现在几乎所有的数据库均支持SQL。

(3)SQL数据库的数据体系结构基本上是三级结构,但使用术语与传统关系模型术语不同。

(4)在SQL中,关系模式(模式)称为"基本表"(base table);存储模式(内模式)称为"存储文件"(stored file);子模式(外模式)称为"视图"(view);元组称为"行"(row);属性称为"列"(column)。

‘捌’ 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 server 课上,老师让我们“查询入学成绩排在前3位的学生姓名,并列的都显示。”不知道用什么语句,

select 姓名字段 from 表名 where 分数字段 in

(select distinct top 3 分数字段 from 表名 order by 分数字段 desc );
在子查询里,先选出最高的三个分数(去重),然后所有分数在这三个分数里的记录,选择该记录的姓名字段

‘拾’ SQL查询一位学生每门课程成绩和总成绩能一起查询吗

SQL查询语句可以实现一位学生每门课成绩和总成绩一起显示,具体需要根据成绩记录的数据表结构编写查询语句。