¹òÇóÒ»¸ösqlÓï¾ä¡£
³É¼¨±íStuScore£º¿Î³ÌÃûcourseName¡¢Ñ§ºÅstudNo¡¢ÐÕÃûname¡¢³É¼¨score
ÇóȫУÿÃſγ̿¼ÊԳɼ¨ÅÅÃûǰÈýÃûµÄѧÉúÃûµ¥
Êä³ö ¿Î³ÌÃû ÐÕÃû ³É¼¨
ÏëÁËN¾ÃÏë²»³öÀ´£¬Çó´óϺÃǰï°ïæ
SQL code:
select courseName,name,score
from StuScore a
where 3>=(select count(*) from tb where courseName=a.courseName and score>=a.score)
ÅÅÃû±ØÈ»Éæ¼°µ½Í¬·ÖÈçºÎÅŵÄÎÊÌâ
SQL code:
select name from
(
select *,row_number() over(partition by courseName order by score desc) rank
from StuScore
)tt
where rank<=3
SQL code:
-sql2000
select name from
(
select *,
(select count(*) from StuScore where courseName=s.courseName and score<s.score) rank
from StuScore
) tt
where rank<=3
-sql2005
select name from
(
select *,row_number() over(partition by courseName order by score desc) rank
from StuScore
)tt
where rank<=3
select *
from StuScore ms
inner join
(
select courseName+score cs
from StuScore ss
where score > (select top 3 score from StuScore s1 where s1.CourseName = ss.CourseName)
) tmp
wh
Ïà¹ØÎÊ´ð£º
ÎÒÓÐÒ»¸ö±í£¬½á¹¹ÊÇÕâÑù¡£
ת³ö µ¥Î» תÈ뵥λ ±ÊÊý ½ð¶î
date(Ö÷) outid(Ö÷) inid(Ö÷) num amt
2009 1 2 1 500 Ϊ 1 µ¥Î» ÔÚ2009Ä ......
¿ÉÄÜÒòΪ¹¤×÷µÄÔÒò ½Ó´¥Êý¾Ý¿âÕâ¿é±È½ÏÉÙ£¬Ö®Ç°¶¼ÊÇ×ö³ÌÐòÕâ¿é£¬Êý¾Ý¿âÕâ¿é¶¼ÓÐרÃŵÄÈËÀ´×ö ·Ö¹¤¶¼ºÜÃ÷ϸ ËùÒÔ¶ÔÊý¾Ý¿âÕâÒ»¿éÍêÈ«²»Á˽⡣ǰ¶Îʱ¼ä È¥ÃæÊÔÁ˼¸¼Ò¹«Ë¾ ¼¸ºõ¶¼ÊÇÔÚÊý¾Ý¿âÕâ¿é¹ÒµôµÄ Á¬¸ö¼òµ¥µÄSQ ......
½ñÌì×öÁËÒ»¸ö´æ´¢¹ý³Ì »·¾³ÊÇSQL2000Êý¾Ý¿â
´óÖÂÈçÏÂ
½¨Á¢ÁÙʱ±í
¶¨ÒåÔ±¹¤Óαê
Ñ»·Ô±¹¤£¨ÊôÓÚ1¸ö¹«Ë¾)
......
ÈçºÎÔÚSQL2005ÖÐÉ趨¶¨Ê±×÷Òµ£¬±ÈÈç˵¶¨Ê±ÇåÀíijЩ±íµÄÊý¾Ý£¬
»òÕßÊǶ¨Ê±µÄ½«Ä³Ð©±íµÄÊý¾Ýµ¼³öexcel£¡
ÔÚÏߵȴý£¬¼±¼±¼±£¬×îºÃÊÇÏêϸ²½Ö裡
֮ǰÎÒ×öµÄ×÷ÒµÓеãÎÊÌ⣡
°ïUP
²Î¿¼:http://hi.baidu.com/toiota ......