當前位置:首頁 » 編程語言 » sqlranking
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sqlranking

發布時間: 2022-07-09 22:33:27

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 各科的成績排序怎麼排名次

各科成績的表達有兩種:

科目 成績排名 科目成績排名

  1. 數學 90 1 數學 90 1

  2. 語文 90 1 語文 90 1

  3. 政治 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