我有一個分貝,看起來像這樣SQL Server 2008中,選擇學生成績優異的學生,從每一類
+--------+-------+-------+
| ID | Class | grade |
+--------+-------+-------+
| 123 | A | 100 |
| 2 | B | 84 |
| 357 | A | 46 |
| 43 | B | 12 |
| 55677 | B | 78 |
| 63432 | A | 63 |
+--------+-------+-------+
很明顯,我處理的更大分貝。 更多學生和更多課程 我想實現的是從每個班級中挑選兩名成績最高的學生。
所以,它應該顯示:
+-------+-------+-------+
| ID | Class | Grade |
+-------+-------+-------+
| 123 | A | 100 |
| 63432 | A | 63 |
| 2 | B | 84 |
| 55677 | B | 78 |
+-------+-------+-------+
如何做到這一點謝謝!
我嘗試這樣做,但它給了我所有行
select id, class, max(grade)
from school
group by id, class
++++
有,我想這個數據庫做另一件事。 我如何才能從每班上拉10%的學生? 後,我加了一個等級的屬性,我嘗試使用這樣的「具有」組後:
rank < count(distinct ID) * 0.05
謝謝!
如果有在第二位的領帶?即將(321,B,78)添加到樣本表數據中。 – jarlh