當前位置:首頁 » 編程語言 » sql查詢總成績前三名語句
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql查詢總成績前三名語句

發布時間: 2022-11-30 05:23:43

『壹』 sql語句如何查詢成績的前三名帶成績重復的

select * from table where 成績 in (select top 3 distinct 成績 from table order by 成績 desc) order by 成績 desc

下面這個效率要高點
select * from table where 成績 >= (select min(成績) from(select top 3 distinct 成績 from table)) order by 成績 desc

『貳』 sql語句 每科成績的前三名

可以用row_number函數來解決。
1、創建測試表,插入數據:
create table sc
(id int,
name varchar(20),
class varchar(20),
score int);

insert into sc values (1,'badkano','一年一班',100)
insert into sc values (2,'網路知道團長','一年一班',99)
insert into sc values (3,'小短','一年一班',95)
insert into sc values (4,'小小動','一年一班',97)
insert into sc values (5,'小智','一年一班',80)
insert into sc values (6,'呂布','一年二班',67)
insert into sc values (7,'趙雲','一年二班',90)
insert into sc values (8,'典韋','一年二班',89)
insert into sc values (9,'關羽','一年二班',70)
insert into sc values (10,'馬超','一年二班',98)
2、查詢每個班級的前三名,可用語句:

select * from
(select row_number() over (partition by class order by score desc) 排名,* from sc) t
where 排名<=3 order by class asc,score desc

『叄』 查詢班上考試成績前三名的成績的SQL語句怎麼寫

select `考試成績` from `成績表` order by `考試成績` desc list 0,3;

『肆』 mysql版 查詢各科成績前三名的記錄:(不考慮成績並列情況)

上面那條答案應該是可以的啊,可能是看起來復雜了點吧,我自己試過是沒問題的:
SELECT t1.sno,t1.cno,Score
FROM SC t1
WHERE EXISTS
(SELECT COUNT(1)
FROM SC
WHERE t1.cno= cno AND t1.score<score
HAVING COUNT(1)<3)
ORDER BY t1.cno,score DESC
另外還有一種類似的寫法:

SELECT t1.sno,t1.cno,Score
FROM SC t1
WHERE
(SELECT COUNT(cno)
FROM SC
WHERE t1.cno= cno AND t1.score<score)<3
ORDER BY t1.cno,score DESC

『伍』 用sql語句,查詢每個班級成績排名前三名的學生姓名

1、首先在打開的SQLServer中,假設有兩條數據中,包含有【張】,但是這個張一前一後,如下圖所示。

『陸』 用sql語句,查詢每個班級成績排名前三名的學生姓名

1、首先在打開的SQLServer中,假設有兩條數據中,包含有【張】,但是這個張一前一後,如下圖所示。

『柒』 資料庫中查出表中最高到最低成績的前3名的語句怎麼寫

最高成績前3名:SELECT TOP 3 score FROM Marks ORDER BY score DESC(按成績從高到低排列,取三位。) 最低成績前3名:SELECT TOP 3 score FROM Marks ORDER BY score ASC

『捌』 SQL語句:查詢各班成績前3的同學姓名

分析如下:

可以用row_number函數來解決。

1、創建測試表,插入數據:

(資料來源:網路:SQL語句)

『玖』 請教sql語言,如何查詢前三名學生......

信息沒給足,, 成績表通過什麼欄位和st_info 以及 c_info關聯呢??

以上信息不足,沒法直接給你寫完整的sql,只能給你個大致的語句供參考

select top 3 st_name,score from st_info,s_c_info..... where ......
order by score desc

『拾』 oracle中的sql求總分前三名

可以用row_number來查詢。

1、創建數據表,插入數據:

createtablesc
(idint,
namevarchar(20),
classvarchar(20),
scoreint);

insertintoscvalues(1,'badkano','一年一班',100);
insertintoscvalues(2,'網路知道團長','一年一班',99);
insertintoscvalues(3,'小短','一年一班',95);
insertintoscvalues(4,'小小動','一年一班',97);
insertintoscvalues(5,'小智','一年一班',80);
insertintoscvalues(6,'呂布','一年二班',67);
insertintoscvalues(7,'趙雲','一年二班',90);
insertintoscvalues(8,'典韋','一年二班',89);
insertintoscvalues(9,'關羽','一年二班',70);
insertintoscvalues(10,'馬超','一年二班',98);
commit;

2、查詢分數的前三名,可用以下語句:

select*from
(selectrow_number()over(orderbyscoredesc)rn,sc.*fromsc)
wherern<=3;

3、結果顯示: