各位前辈好, 最近碰到一个需求,要用SQL取得某一个使用者在各事件中排名前五的次数。 我想法是先取得某一次事件的前五: SELECT TOP 5 log.Score, log.UserId FROM Events e, EventLog log WHERE e.EventNo = log.EventNo AND e.EventNo = 1 ORDER BY log.Score DESC; Events这张表是纪录有哪些事件 EventLog则是纪录某事件里每个人的分数 虽然上面的SQL可以顺利取出事件1里面的前五名, 可是要改成取出所有事件的前五名就卡住了… 有稍微试过用GROUP BY搭配子查询,可是都会卡住 囧 只好上来求助各位前辈><,希望能给点方向 感谢!