『壹』 sql查詢最高分和最低分
//查詢最高分
selectmax(score)fromstudent
//查詢最低分www.sz886.com
selectmin(score)fromstudent
//查詢最低分和最高分
selectmin(score)asmin_score,max(score)asmax_scorefromstudent
『貳』 怎麼用SQL語句查詢所有學生所學課程(單個學生學的多門課程)的最高分數,最低分數和平均分數
SELECT student.sno AS `學號`,student.sname AS `姓名`,MAX(grade) AS `最高分`,MIN(grade) AS `最低分`,AVG(grade) AS `平均分`
FROM sc JOIN student ON sc.sno = student.sno GROUP BY sc.sno ;
『叄』 sql查詢每門課程最高分學生的學號,課程號,成績。這些在一張表裡,用嵌套查詢
SELECT * FROM 成績表 A WHERE 成績=(select max(成績) FROM 成績表 B WHERE B.課程號=A.課程號)
『肆』 sql,查詢每門課程最高分的學生的學號,課程號,成績。再一張表裡
select 學號, 課程號 , 成績 from 表A ( select 課程號 ,max(成績) AS mCJ from 表A group by 課程號) B where 表A課程號=B.課程號 AND 表A.成績 =B.mCJ
『伍』 查詢每門課成績最高分的同學的sql語句,輸出課程名,姓名,學號,分數。表的結構如下。寫出完整的sql語句
SELECT cname,sname,student.sno,grade
FROM student join sc on student.sno=sc.sno
join course on course.cno=sc.cno
where grade=(select max(grade)
from sc
where cno=course.cno )
『陸』 sql問題,查找每門課程選課學生,平均分,最高分,最低分 。怎麼解答啊
你好,很高興回答你的問題。
解決這個問題需要用到分組查詢和聚合函數。
sql大致如下:
select 課程,avg(分數),max(分數),min(分數) from 表 group by 課程。
其中avg是算平均分。
max是算最大分。
min是算最小分。
如果有幫助到你,請點擊採納。
我解答的大部分是軟體開發新人遇到的問題,如果有興趣可以關注我。
『柒』 SQL查詢每門課程最高分學生的學號,課程號,成績
select t1.學號,t1.課程號,t1.成績
from table t1
where t1.成績 = (
select max(t2.成績)
from table t2
where t2.課程號 = t1.課程號
group by t2.課程號
)
『捌』 SQL查詢單科成績最高的同學
SELECT child.abc,child.cource,a.name
FROM (select max(b.point) as abc,c.cource from `student` as a join `achievement` as b join `course` as c on a.sex = 1 and b.sid=a.id and b.cid=c.id group by c.cource) as child
join `student` as a join `achievement` as b join `course` as c on a.sex = 1 and b.sid=a.id and b.cid=c.id where child.abc=b.point and child.cource=c.cource
很繁瑣,子查詢和查詢的都是同一個表同一個條件,答案包對
不要姓名要學號的話就把名字換一下
原理
子查詢出最高分和科目,再用父查詢把(同條件下)把最高分和科目配對
『玖』 SQL查詢求每個同學的課程成績的最高分,查詢結果項包括:學生姓名、課程號及最高分
你好,你展示的第一種sql查詢方案,其意思是:
先根據score表中的sno分組求每個sno的最高分數。這求得的當然是每個同學的最高分啦,但是只是獲得了最高分,沒有指定是誰的最高分,導致在前面的【SELECT SNAME ,CNO,GRADE FROM Score Y,StudentWHERE (STUDENT.SNO=Y.SNO)】查詢結果集中的後面檢索條件【AND Y.GRANDE IN (所有人的最高分集合)】,這樣系統就會查詢分數在「所有人的最高分」里的結果集了。
而第二種方案,除了限定分數范圍(最高分),還限定了學生的編號(
SELECTMAX(GRADE)FROMSCOREWHERE
SNO=Y.SNO
GROUPBYSNO,sno=y.sno就是限定學生的編號。
),所以結果自然不同了。
根據你的要求,我給你提供一種查詢方式。其實原理是一樣的哦。
selectstu.sname,scr.cno,scr.gradefromstudentstu
leftjoinscorescronscr.sno=stu.sno
whereexists(select1from(selects.sno,max(s.grade)asmgfromscoresgroupbys.sno)twheret.sno=stu.sno
andt.mg=scr.grade)
希望能幫助你。
『拾』 如用使用sql語言列出每門課最高分的學生的信息
select 學生.學號, 學生.姓名, max(選課.成績)over(partition by 選課.課程編碼) as '最高成績' , 選課.課程編碼 ,課程.課程名稱
from 學生,選課,課程
where 學生.學號=選課.學號 and 選課.課程編碼=課程.課程編碼
這樣就可以把每門課程最高成績的學生信息查詢出來
可以在select 後面多加一列想要的學生信息