資料庫成績排名
A. sql查詢排名總分前十的學生姓名!
SELECT * FROM (SELECT 班級自,姓名,SUM(分數) 總分數,ROW_NUMBER() OVER(PARTITION BY 班級 ORDER BY SUM(分數) DESC) 班級名次 FROM 表名 GROUP BY 班級,姓名) T WHERE 班級名次<=10 ORDER BY 班級,班級名次
B. 資料庫成績排序問題,分數相同名次相同就少個名次
select * from table_name order by fs desc;
其中table_name是你的表名。order by fs是按照fs列進行排序,desc是倒序的意思專,屬就是數字大的在上面。
C. sql 查找成績排名第二的同學
sql 查找成績排名第二的版同學權
select top 1 * from tbl_score where tbl_score NOT IN ( select top 1 * from tbl_score )
D. oracle資料庫中怎樣依據成績實現排名
首先,來構造一些數據
drop table test;
create table test
(
name varchar2(10),
account number(5)
);
insert into test values ('張三','5');
insert into test values ('王五','10');
insert into test values ('小二','10');
insert into test values ('李四','20');
insert into test values ('小三','40');
insert into test values ('小四','50');
insert into test values ('小五','90');
insert into test values ('小六','90');
insert into test values ('小七','90');
commit;
下面來看一下一些方式的排名結果:
1. select t.*,dense_rank() over(order by t.account asc) 排名 from test t;
E. sql語言,有一個成績單表,已知學生姓名,如何查詢名次
1、創建測復試表,
create table test_score(name varchar2(20), score number);
F. sql查詢某個學生的平均成績的排名
1
2
3
4
5
6
7
8
9
10
11
select s.dname,s.sname,s.avggrade
from
(select t.dname,t.sname,t.avggrade,row_number() over (partition by t.dname order by t.avggrade desc) rn
from
(select a.name dname,b.name sname,avg(c.grade) avggrade
from
department a,student b,takes c
where a.department_id=b.department_id
and b.student_id=c.student_id
group by a.name,b.name) t) s
where s.rn=1
包含並列的情況,如果一個學院有兩個第一,兩個人都顯示,以上為 sqlserver或oracle寫法,其他資料庫執行不了
-------------補充-----------
給你個通用的
select s2.*
from
(select t.dname,max(t.avggrade) avggrade
from
(select a.name dname,b.name sname,avg(c.grade) avggrade
from
department a,student b,takes c
where a.department_id=b.department_id
and b.student_id=c.student_id
group by a.name,b.name) t
group by t.dname) s1,
(select a.name dname,b.name sname,avg(c.grade) avggrade
from
department a,student b,takes c
where a.department_id=b.department_id
and b.student_id=c.student_id
group by a.name,b.name) s2
where s1.dname=s2.dname
and s1.avggrade=s2.avggrade
G. SQL語句查詢成績排名前十名的學生
:以上兩條均對!,關於表名和排序欄位,讓提問題的【朋友】填寫,我們三人均祝你成功!!!
H. 如何查詢資料庫中排名前幾位的數據
使用 select top 5 * from table order by id 時,報用select語句檢索oracle資料庫時出現ora-00923:未找到要求的from關鍵字。
因為該SQL語句是在SQLServer中的使用的,如果是在 Oracle中,需要使用 rownm 這個關鍵字用來返回 查詢的記錄條數。
eg: select * from table where rownnm<=5 order by id
I. 資料庫里怎樣查出排名
dim index,paimin
paimin=1
Set Index=Conn.Execute("SELECT * FROM chengji ORDER BY mark DESC")
IF not(Index.EOF AND Index.BOF) Then
Do While NOT (Index.EOF And Index("name")="王明")
paimin=paimin+1
Index.MoveNext
loop
end if
response.write paimin
index.close
set index=nothing
-----------
不知道有沒有簡單點回的方法答