2011-03-21 4 views
0

Supposons que j'ai une table mysql:puzzle MYSQL Intéressant t20

ID - int, auto-increment 
Num - int 

Nb est un nombre entier aléatoire choisi aléatoirement entre 1 et 100 avant d'insérer la ligne dans la table. Disons que j'ai 1000 entrées dans le tableau. Par exemple:

1,65 
2,23 
3,87 
4,99 
5,75 
6,45 
etc. 

De là, Comment peut-on obtenir les valeurs d'identification des 20 premières valeurs de num?

Répondre

1

Je devine que vous voulez tous les ID des nombres aléatoires qui se produisent le plus souvent:

select Num, COUNT(id) as cnt, GROUP_CONCAT(id) 
from yourtable 
group by Num 
order by cnt desc 
limit 20 
2
select id 
from table 
order by Num desc 
limit 0, 20 
0
SELECT ID FROM Table ORDER BY Num DESC LIMIT 20