推 taitin:喔喔~~懂了~~謝謝喔~ 10/27 11:14
SELECT a.id, a.category, a.num
FROM test a
LEFT JOIN test b ON ( a.category = b.category AND a.num < b.num )
GROUP BY a.id, a.category, a.num
HAVING count( b.id ) <2
ORDER BY a.id, a.category, a.num DESC
※ 引述《taitin (小南)》之銘言:
: 我使用的是mysql
: 我有一些資料
: id category num
: 1 1 9
: 2 1 8
: 3 1 7
: 4 1 6
: 5 2 9
: 6 2 8
: 7 2 7
: 8 2 6
: 9 3 9
: 10 3 8
: 我想要選出各個category的前兩名
: 也就是
: 1 1 9
: 2 1 8
: 5 2 9
: 6 2 8
: 9 3 9
: 10 3 8
: 我想要一次撈出來
: 但是不知道怎麼撈耶...
: 有沒有人可以指點一下
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.131.84.78