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

sql查詢平均成績前十的

發布時間: 2023-04-30 18:10:32

sql語言怎麼顯示成績表中成績最高的前十條學生的信息

SELECT TOP 10 *, Num=(SELECT count(DISTINCT result) FROM test_result WHERE RESULT>=RESULT)
FROM test_result
ORDER BY Num 欄位寫出來,我給你寫清楚,方法就是這樣

Ⅱ sql查詢 從一張表中找到每個班成績排在第十名的信息。

--按成績降序排列 取前10個即可
select a.number,b.class,b.score from st_score as a
join (
select top(1) t.class,t.score from (
select top 10 class,score from st_score
group by class
order by score desc) as t order by t.score) as b
on a.class=b.class and a.score=b.score
order by b.class,b.score desc

Ⅲ 求一條SQL語句:能一次計算出各科前10名學生的平均成績。

select '語文' as 科目, avg(語文) as 平均成績 from
(select top 10 語文 from 成績表 order by 語文 desc) as x
union all
select '數學' as 科目, avg(數學) as 平均成績 from
(select top 10 數學 from 成績表 order by 數學 desc) as y
union all
select '英語' as 科目, avg(英語) as 平均成績 from
(select top 10 英語 from 成績表 order by 英語 desc) as z

如果還有其它科目,可以用同樣的方式往後加。

Ⅳ 請問 SQL資料庫 在一張表中有不同的課程,我想求各個課程的平均成績怎麼求 在一張表中求出學生成績前10%求

求各個課程的平均成績:
select kc.課程.avg(kc.成績) from kc group by kc.課程
求出表中前10%的學生成績。
select top 10 percent * from table order by 成績 desc
你是想求各個課程的平均成績,還基圓是想求 學生的信息和他們的平均成績?表結構是怎麼歲鋒告樣的?可以貼出來看看嗎?乎明

Ⅳ mysql中一張學生表,查詢出單科成績前十名學生的所有信息 和總分成績前十名學生的所有信息 在線等

學生表名為:student, 單科成績的欄位為:subject。學生名字為:name

查詢單科成績前十:mysql語句為:select * from student order by subject desc limit 10;

查詢總分成績前十:mysql語句為:select sum(subject) subject,name from student group by name order by subject desc limit 10;

註:

select sum(subject) subject,name

這句的意思是:sum(subject) subject 把單科成績加總用subject 來命名(就是總成績),name就是一個欄位,這里只有兩個欄位。

group by name order by subject : group by name 的意思按照名字這一欄來分組,當然,學生成績表名字有可能是一樣的,按照學號是最准確的,這里只是舉個例子。

order by subject 這句的意思是按照總分成績排序,這里的subject 是前面重命名總分的意思。

select sum(subject) as countsubject,name from student group by name order by countsubject desc limit 10;

(5)sql查詢平均成績前十的擴展閱讀:

學生成績表常用sql

1. 在表中插入符合主鍵

[sql]

/*成績表*/

CREATE TABLE SC

(

Sid INT REFERENCES Student(Sid), /*學生學號*/

Cid INT REFERENCES Course(Cid), /*課程編號*/

Score INT NOT NULL, /*課程分數*/

PRIMARY KEY(Sid,Cid) /*將學生學號和課程編號設為復合主鍵*/
)

2. 查詢各科成績最高分,最低分以及平均分

[sql]

SELECT c.Cname, MAX(s.Score) AS Max, MIN(s.Score) AS Min, AVG(s.Score) AS Average

FROM Course c JOIN SC s ON c.Cid = s.Cid

GROUP BY c.Cname

/*此處應注意,若不按照c.Cname進行分組,SQL語句會報錯,c.Cname在SELECT語句中不合法,因為它並未出現在聚合函數中也沒有出現在GROUP BY語句中*/


3. 查詢平均成績大於80分的學生姓名以及平均成績

[sql]

SELECT Sname, AVG(Score) AS Average FROM Student JOIN SC

ON Student.Sid=SC.Sid

GROUP BY Sname

HAVING AVG(Score)>80

/*以聚合函數為條件進行刪選只能在HAVING語句中進行,WHERE語句不支持聚合函數*/

4.按總分為學生排名,總分相同名次相同

[sql]

SELECT RANK() OVER (ORDER BY SUM(ss.Score) DESC) AS Rank, s.Sname,

ISNULL(SUM(ss.Score),0)

FROM Student s LEFT JOIN SC ss

ON s.Sid = ss.Sid

GROUP BY s.Sname

ORDER BY SUM(ss.Score) DESC

/*RANK()是SQL Server的一個built-in函數,語法為

RANK() OVER ( [ partition_by_clause ] order_by_clause ).*/

5. 查詢總分在100至200之間的學生姓名及總分

[sql]

SELECT s.Sname,SUM(ss.Score) FROM Student s JOIN SC ss ON s.Sid=ss.Sid

GROUP BY s.Sname HAVING SUM(ss.Score) BETWEEN 100 AND 200

Ⅵ 請問一下怎樣用Sql統計單科的前10學生的平均成績

因為ORDER BY 英語 對查詢結果按英語字肢大皮段排序,而你的Select 中未包含英語欄位
另TOP 語句是從歷差查詢結果中顯示前N行,在這里加不不加好像一樣仿戚

Ⅶ 用sql如何查詢課程成績排名呢

1、查詢「001」課程比「002」課程成績高的所有學生的學號:

SELECT * FROM tblScore ts1, tblScore ts2

WHERE ts1.stuid = ts2.stuid AND ts1.courseid = '001' AND ts2.courseid = '002

AND ts1.score > ts2.score

(7)sql查詢平均成績前十的擴展閱讀

查詢資料庫使用SELECT命令。 這個命令相對比較復雜。可變化樣式較多,這里分功能依次講解。

1、查詢數據表中所有數據 語法:select * from 表名。

2、查詢指定欄位的顯示 語法:select 欄位1,欄位2,... from 表名。

3、as 別名 在查詢時,默認結果顯示的欄位和表中欄位名相同,可以通過別名來修改顯示的樣式 語法:select 欄位1 as 別名,欄位2 別名,... from 表名。在給欄位起別名時,可以使用 as ,也可以直接在欄位後跟別名,省略 as 。

4、消除重復數據 在查詢數據時,查詢結果可能會有很多重復的數據,如果不想重復,可以使用 distinct 來實現去重。 語法:select distinct 欄位名 from 表名。distinct 在去重時,會比較所有的念基指定欄位,攜高逗只有完全相同時才認為是重復的。辯賣

5、帶條件查詢 where 子句 查詢數據時,需要根據不同的需求設置條件。 通過 where 子句來設置查詢條件。

參考資料

資料庫-網路

Ⅷ 求一條SQL語句:能計算各科前10名學生的平均成績的方法

select avg(語文) as 語文平均成績 from (select top 10 * from 成績表 order by 語文 desc)
select avg(數學) as 數學平銀緩虛均成哪敗績 from (select top 10 * from 成績表 order by 數學 desc)
select avg(英語鋒燃) as 英語平均成績 from (select top 10 * from 成績表 order by 英語 desc)

Ⅸ 查詢考試成績前十名的學生編號和學生成績用SQL Server怎麼查詢

應該首先排除掉掛科的學生,然後按成績倒序排列取前十位考生的成績和編號。
select top 10 studentid,stcore from 成績表
where studentid not in (select studentid from 補考表 )order by stcore desc,studentid

Ⅹ SQL語言怎麼顯示成績表中成績最高的前十條學生的信息

select * from 成績表 order by 成績 desc limit 10