有一表学生的成绩表,其结构如下:
Term smalldatetime not Null 学期
Std_ID int not null 学号
Subj_Id int not null 课程编号
Mark decimal(9,2) Null 课程成绩
Order samllint Null 次序
请你为每个学期每门课程排一个次序(按降序,成绩相同的同一次序),用Procedure和试图各自实现
Term smalldatetime not Null 学期
Std_ID int not null 学号
Subj_Id int not null 课程编号
Mark decimal(9,2) Null 课程成绩
Order samllint Null 次序
请你为每个学期每门课程排一个次序(按降序,成绩相同的同一次序),用Procedure和试图各自实现
set [order]=1+(select count(*) from T a where a.term=T.term and a.Subj_Id=T.Subj_Id and a.Mark>T.Mark)
(
SELECT Term,Std_ID,count(1) as cnt FROM TB GROUP BY Term,Std_ID
)B ON A.Term=B.Term AND A.Std_ID=B.Std_ID
order by A.Term,A.Std_ID,cx