Re: [SQL ] 分組取前五
※ 引述《b60413 (None)》之銘言:
: 我想要做一個查詢是分組取前五的動作,
: 資料庫的結構大致如下,
: id t_type frequency
: 1 a 10
: 2 b 15
: 3 c 20
: 4 a 5
: 5 b 1
: 目前的做法我是使用分開查詢的方式去做,然後再自行將結果合併,如下
: SELECT * FROM test WHERE t_type LIKE 'a' ORDER BY frequency DESC LIMIT 5
: SELECT * FROM test WHERE t_type LIKE 'b' ORDER BY frequency DESC LIMIT 5
: SELECT * FROM test WHERE t_type LIKE 'c' ORDER BY frequency DESC LIMIT 5
: 有試著使用GROUP BY的功能去達到精簡,
: 不過一直試不出來正確的語法,
: 請問有沒有人有更漂亮的寫法可以提供?
: 謝謝.
google了一下 不知道這個對不對
SELECT * FROM test A WHERE A.id IN (SELECT test B WHERE A.id = B.id LIMIT 5)
http://topic.csdn.net/u/20100926/15/e7090a20-ec38-46e1-84f3-5e66e9936abc.html
--
http://blog.carlcarl.tw
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.123.105.191
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 3 篇):