⑴ sql排名问题。如例子。 成绩 排名(不存在) 88 2 99 1 76 3
select * from table order by score desc
把得到的结果再遍历一下加上序号就可以了。
至于最小值除以最大值,还要依次除下去,不理解什么意思?要表达什么?
排名的最小值是1,最大值就是记录的总条数。
分数的最大最小值这样找:
select max(score),min(score) from table
⑵ ranking的sql语句
2)报错是说'ranking'这个字段在数据库里不存在,你在'ranking'后面+个空格试试,或者你把'ranking'放到那个字段的后面,或者按照你写的as的方法给字段重新命名就可以了
1)楼主的排名不对,我按照你上面的做了一个例子,你参照改改字段名吧
if object_id('pubs..tb') is not null
drop table tb
go
create table tb
(
name varchar(10),
score int
)
insert into tb(name,score) values('1',80)
insert into tb(name,score) values('1',40)
insert into tb(name,score) values('1',80)
insert into tb(name,score) values('2',50)
insert into tb(name,score) values('2',40 )
insert into tb(name,score) values('2',60 )
select * , 排名 =(select count(1) from
(SELECT name , SUM(score) as '总分'FROM tb GROUP BY name) a
where 总分> t.总分) + 1 from
(SELECT name , SUM(score) as '总分'FROM tb GROUP BY name) t
drop table tb
⑶ 用SQL语句排名次
selectt.classid,score,row_number()over(orderbyscoredesc)rn
from
(selectclassid,avg(score)scorefromscores)t
sqlserver下写法
⑷ sql 排名次
你整理一个demo出来,把你的三张原始数据贴在excle中,然后再把你想要的结果贴在里面,然后这四张图,截图上传上来大家就知道你想要的了。
⑸ SQL排名函数rank怎么用
请参阅下面的文章rank开窗函数的用法简介
上面有详细的讲述rank函数的用法
请采纳!
⑹ 怎么写一个sql语句来显示排名
在Sqlserver2005+中:
利用:Row_Number() over(order by chengji) 可以显示排名
--sql如句如下:
select*,row_number()over(orderbychengji)paimingfromStu
如有问题可以追问,我当及时回答。
希望能帮到你!
⑺ SQL排名语句,高手来赐教!
第一个回答的不错,不过有些错误,应该在插入临时表时,按成绩的倒序插入,
查询时按排名正序排列,同时,最后还要删除临时表
---按成绩的倒序插入临时表,
select id ,name,cj, identity(int,1,1) as pm
into #lsb
from 表名 order by cj desc
--按排名的正序排列
select * from #lsb order by pm
--删除临时表
drop table #lsb
⑻ sql中查询排名名次
sql语句是这样的
select count(*) from student where class=601 and score>(select score from student where name='张三')
这个就求出了在601班的张三前有多少个人,他的名就是这个返回值+1,这个问题不关排序鸟事。做个统计就行了!
你不会是要在页面直接调用sql语句吧!
常规方法是把这个放在一个业务类传给数据访问层做处理后返回结果传给页面
你问的response.write这个有点吃力吧!
⑼ SQL 怎么用指定条件查询RANK函数生成的新排名列
你说的这个问题和rank没有关系,你只是想把查出来的一列数据根据条件再update到表中某一列。 所以你可以用临时表先查出(key, value)这样的组合,然后在通过key相等这样的条件来update你表中对应行的某列的value。 With T { Select a.key_no as key, RANK() over(partition by a.key_no order by a.id) as value, From A a } update A set a.Some_Column = ( select t.value from T t where t.key = A.key_no )
⑽ sql 各科的成绩排序怎么排名次
各科成绩的表达有两种:
科目 成绩排名 科目成绩排名
数学 90 1 数学 90 1
语文 90 1 语文 90 1
政治 85 3 政治 85 2
#这是第一种的显示
seclet科目,成绩,(
selectcount(成绩)+1
fromtable_namewhere成绩>t.成绩)
fromtable_nameast
orderby成绩desc
#第二中的显示类似可以是加distinct或者是不加distinct而用分组groupby一个意思
seclet科目,成绩,(
selectcount(distinct成绩)
fromtable_namewhere成绩>=t.成绩)
fromtable_nameast
orderby成绩desc