2013-10-16 71 views
-2

我正在查詢查詢以獲取表格中排名前10位的數據。 我的表:Mysql如何按出現次數選擇數據順序

id | art_id | tag_id 

我想有最多被叫TAG_ID(實施例的頂部10:150 TAG_ID 「25」,然後146 TAG_ID 「36」,然後132 TAG_ID 「76」 ..... ) 我真的不知道怎麼去說......和結束時,加入到從其他表有標記的名稱:

tag_id | tag_name 

任何想法嗎? 感謝

回答

-1
SELECT 
    m.tag_id, o.tag_name, COUNT(m.tag_id) FROM mytable m 
INNER JOIN 
    myothertable o ON o.tag_id = m.tag_id 
GROUP BY 
    m.tag_id 
ORDER BY 
    COUNT(m.tag_id) DESC 
LIMIT 10 
+0

不起作用...但是你在查詢中使用2代表的列名... – user2670167

+0

好吧,發現根據你的一個很好的查詢! 'SELECT s.tag_id,COUNT(s.tag_id),t.tag \t \t \t \t \t \t FROM stories_tags小號 \t \t \t \t \t \t加入標籤噸上t.id = s.tag_id \t \t \t \t \t \t GROUP BY s.tag_id \t \t \t \t \t \t ORDER BY COUNT(s.tag_id)DESC \t \t \t \t \t \t LIMIT 10' – user2670167

+0

@ user2670167哦,那些是兩張表嗎?試試看 - 顯然使用正確的表名。 –