1. 用sql server 对学生总成绩进行排名
分别倒序顺序排序取出5个
select
top
5
*
from
成绩表
order
by
成绩
desc
select
top
5
*
from
成绩表
order
by
成绩
asc
一条语句就把他们连起来就好了
select
*
from
(select
top
5
*
from
成绩表order
by
成绩
desc)
as
a
union
all
select
*
from
(select
top
5
*
from
成绩表order
by
成绩
asc)
as
b
2. SQL语句查询 实现每个学生的每单元最好成绩的总和,再把每个人的总和成绩排名 (一条语句实现)
select 学生ID, SUM(b.最高成绩 ) 总和
from
(select 学生ID, 单元ID ,MAX(成绩) 最高成绩
from Test group by 学生ID,单元ID ) b group by b.学生ID
3. 按照人名查出学生的各科成绩以及总成绩并按总成绩排名的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实现按总成绩倒叙排列。
(3)sql计算学生总成绩并排名扩展阅读
上述sql语句重点是对as关键字的使用- Alias(别名),通过使用 SQL,可以为列名称和表名称指定别名(Alias)。
表的 SQL Alias 语法
SELECT column_name(s) FROM table_name AS alias_name;
列的 SQL Alias 语法
SELECT column_name AS alias_name FROM table_name;
Alias 实例: 使用表名称别名
假设我们有两个表分别是:"Persons" 和 "Proct_Orders"。我们分别为它们指定别名 "p" 和 "po"。
现在,我们希望列出 "John Adams" 的所有定单。
我们可以使用下面的 SELECT 语句:
SELECT po.OrderID, p.LastName, p.FirstName FROM Persons AS p, Proct_Orders AS poWHERE p.LastName='Adams' AND p.FirstName='John'
4. 有一个student表,有学号,姓名,科目,成绩等字段,请写一条sql语句,算出学生的总分数
Mysql 示例:
1. 创建t_student表
CREATETABLE`t_student`(
`id`intNOTNULLAUTO_INCREMENT,--自增ID
`studentID`varchar(20)NULL,--学号
`studentName`varchar(20)NULL,--姓名
`subject`varchar(50)NULL,--科目
`score`doubleNULL,--成绩
PRIMARYKEY(`id`)--主键设置
);
2. 填充数据
5. 用sql server 对学生总成绩进行排名
分别倒序顺序排序取出5个
select top 5 * from 成绩表 order by 成绩 desc
select top 5 * from 成绩表 order by 成绩 asc
一条语句就把他们连起来就好了
select * from (select top 5 * from 成绩表order by 成绩 desc) as a
union all
select * from (select top 5 * from 成绩表order by 成绩 asc) as b
6. 求sql文,按班级分组计算总分并排名
select 班级,姓名,‘总分’,sum(分数)
from 表名
group by 班级,姓名
order by sum(分数) desc
7. 再问 sql 合计每个记录的总分,并给总分排名
select 姓名,数学,语文,英语,数学+语文+英语 as 总分,(select count(1) from 成绩表 where 数学+语文+英语>=t.数学+t.语文+t.英语) as 排名 from 成绩表 t
8. SQL计算并显示班上每位同学成绩的总分和平均分,并按总分从高到低排序
----统计函数----
AVG
--求平均值
COUNT
--统计数目
MAX
--求最大值
MIN
--求最小值
SUM
--求和
order
by
stockid
desc(asc)
---------
排序,desc-降序,asc-升序
9. 求总成绩和排名的SQL语句
select 姓名,数学+语文+英语 from 表 order by 数学+语文+英语
10. sql 语句计算学生总成绩
select
学生.学号
as
姓名,
sum(成绩.分数)
as
总分
from
学生
left
join
成绩
on
成绩.学号=学生.学号
group
by
学生.学号
完全手打,若有疑问直接留言,我会持续关注的,保证好评率~