2010-12-07 6 views
4

Я хочу, чтобы принести топ-10 самых повторяющихся строк из следующей таблицы:Как перечислить 10 самых повторяющихся строк?

Table Name: votes(id,vote) 
-------------------------- 
1 | Taylor Swift 
2 | Maroon5 
3 | Maroon5 
4 | Maroon5 
5 | Taylor Swift 
6 | Kanye West 

Вывод должен быть что-то вроде:

1. Maroon5: 3 votes 
2. Taylor Swift: 2 votes 
3. Kanye West: 1 votes 

Как сделать это с помощью MySQL только (если это возможно)

Спасибо

ответ

8
select vote, count(*) 
from votes 
group by 1 
order by 2 desc 
limit 10 
1
select vote,count(vote) from votes group by vote order by count(vote) desc limit 10 
+0

Зачем считать все столбцы и зачем запускать COUNT x2? вы просто назначаете его, «голосуете, считаете (голосуете) как count`, то« ORDER BY count » – RobertPitt 2010-12-07 22:44:46

+0

@Robert - он не будет« запускать счет »дважды« – 2010-12-07 22:48:39

Смежные вопросы