sql server 中如何查询学生表中每位学生全部科目中最高分对应的那行数据呢? 急急急 !
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql server 中如何查询学生表中每位学生全部科目中最高分对应的那行数据呢? 急急急 !相关的知识,希望对你有一定的参考价值。
是在同一张表中, 比如有10个学生,有的学生有3个科目的成绩,有的只有2个科目的成绩,我要查的是每个学生的最高分那科对应那行的数据,查询的结果应该就是有10条数据的,
select t1.*from 学生表 t1,
(select 学号,max(成绩)as 成绩 from 学生表 group by 学号)t2
where t1.学号=t2.学号
and t1.成绩=t2.成绩 参考技术A CREATE TABLE [dbo].[成绩表](
[学号] [nvarchar](10),
[姓名] [nvarchar](5),
[科目] [nvarchar](20),
[分数] [decimal](3, 1)
)
SELECT [学号],[姓名],[科目],[分数] FROM(
SELECT *,ROW_NUMBER() OVER(PARTITION BY 学号 ORDER BY 分数 DESC) AS orderNum FROM 成绩表) TEMP
WHERE orderNum=1 参考技术B 牛叉,受教了追问
这样还是不行耶, 能帮我再想想吗? 问题已经补充啦,
追答没做过
SQL Server数据库DML操作
SQL Server数据库DML操作
补充:
1.删除数据库:
例子:drop database 学生数据库
2.删除表
例子:drop table 学生表
1.在表中增加数据
例子:
insert into学生表(学号,姓名,性别,出生日期,政治面貌) values(43,‘yyw‘,‘男‘,‘2000-7-5,‘党员‘‘);
2.在表中更改数据
例子
update 学生表 set 姓名=‘yyh‘ where 学号=43;
3.在表中删除数据
例子
delete from 学生表 where 学号=43;
delete from 学生表;
以上是关于sql server 中如何查询学生表中每位学生全部科目中最高分对应的那行数据呢? 急急急 !的主要内容,如果未能解决你的问题,请参考以下文章
创建一个存储过程,给定某学生学号,要求查询出该学生的姓名,所选课程名和成绩.(SQL SERVER)