2012-05-25 11 views
5

Próbuję uzyskać instrukcję MYSQL, która wypluje najbardziej popularny numer w polu. Wierzę, że mam użyć COUNT(QUANTITY), ale jestem zdezorientowany, przez które do GROUP BY i ORDER BY, nie mogę wydawać się uzyskać prawidłowy MODE (najbardziej powszechny numer).Najczęściej występująca liczba w instrukcji SELECT SELYS

* EDIT *

Oto tabela próbki:

QUANTITY | ORDER_NUMBER 
    1   51541 
    4   12351 
    5   11361 
    5   12356 
    6   12565 
    8   51424 
    10  51445 
    25  51485 

Oświadczenie MySQL powinno wypluć numer ponieważ wydaje się najczęściej

Odpowiedz

4
SELECT QUANTITY,COUNT(*) 
FROM ... 
GROUP BY 1 
ORDER BY 2 DESC 
LIMIT 1; 
+0

Wypróbowałem je wszystkie, a ten dostał dokładnie to, o co prosiłem, wyświetlając tylko 1 numer, czyli ** 5 **, biorąc pod uwagę powyższy przykład. – ToddN

2
SELECT ORDER_NUMBER AS ORDER, COUNT(QUANTITY) as numorders 
FROM table 
GROUP BY ORDER_NUMBER 
ORDER BY numorders 
+0

zapomniał zawierać rzeczywistą liczbę więc można powiedzieć, jaki jest ten najpopularniejszy numer ... –

+0

Tak, dodałem dziękuję. – aleroot

1

uzyskać top 10 order_number s zrobić

select order_number, count(order_number) as quantity 
from your_table 
group by order_number 
order by quantity desc 
limit 10 
0
SELECT QUANTITY, COUNT(QUANTITY) AS TOTAL_Q 
FROM MYTABLE 
GROUP BY QUANTITY 
ORDER BY TOTAL_Q DESC 

to daje liczbę quanity od najbardziej do najmniej numer ....

Powiązane problemy